Я скакал по функциональным языкам последние несколько месяцев от F # до Haskell и Scheme (Racket). Я никогда особо не использовал рекурсию, но Haskell и его сопоставление с образцом действительно помогли мне меньше их бояться. Теперь, когда я использую Scheme, я, кажется, по умолчанию использую рекурсивные методы. Мне любопытно, указывает ли это на то, что я просто переживаю "оооо, блестит!" фазы, или если рекурсия является основным продуктом разработки схемы.
Замечание: я стремился к хвостовой рекурсии всякий раз, когда писал рекурсивные методы.