Y Combinator в схеме с помощью Define

Чтобы узнать, что такое комбинатор с фиксированной точкой и для чего он используется, я написал свой собственный. Но вместо этого писать его с использованием строго анонимных функций, таких как Пример из Википедии , я просто использовал define:

(define combine (lambda (functional)
                  (functional (lambda args (apply (combine functional) args))))

Я тестировал это с помощью функционалов для факториала и фибоначчи, и, похоже, он работает. Соответствует ли это формальному определению комбинатора с фиксированной точкой?

5
задан AlcubierreDrive 14 January 2011 в 03:06
поделиться