November 22nd, 2009

|, me, hikki, ok

Корекурсия

В разрешении дилеммы между полезным, но не очень интересным деланием домашнего задания, и не очень полезным, но очень интересным самообучением сегодня я почему-то выбрал второе.

И пришёл мне в голову ко-рекурсивный способ возведения числа в натуральную степень (код на Haskell, я играюсь в ghci):
> let pow x = let q = 1 : map (*x) q in q


Тогда, например, 2 в 10ой степени можно получить так:
> (pow 2)!!10


Не сложно, зато забавно.