Haskellは再帰以前のところが難しいので再帰に慣れたいならSchemeをおすすめする