Я могу довольно легко определить церковные цифры, используя схему:
> (define f (lambda (x) x))
> (f f) ;0
#<procedure:f>
> (f (f f)) ;1
#<procedure:f>
Однако это не позволяет легко распознать, что (f f)
равно 0, а (f (f f)) равно 1. Можно ли сделать эти числа более читабельными? Что было бы идеально, так это:
> (f f)
0
> (f (f f))
1
Пример на схеме, но я возьму ответ на любой шепелявости.
(f f)
этоf
, поэтому(f (f f))
это(f f)
этоf
. - person sepp2k   schedule 20.04.2010