We hereby invite you to participate in the first International Obfuscated Scheme Contest. Only standard compliant RnRS Scheme is allowed.
(define Y
(lambda (f)
((lambda (g) (g g))
(lambda (g)
(f (lambda x (apply (g g) x)))))))
Can you explain what is happening in the above code ?
>>3
It is a Y combinator from the lambda calculus.
Calculus? But tthey told me you don't actually need higher math for programming!
>>5
Depends on what you mean by "higher math". You do need math to understand data structures and algorithms when reading a textbook like CLRS.
>>5
lambda calculus =/= infinitesimal calculus
but knowing the latter might be useful in solving some domain-specific problems