Get the latest tech news
Lisp's Grandfather Paradox
grandfather paradox Recursion is an idea often associated with infinity, a process that repeats ad aeternam. It is perhaps surprising, then, that the origin story of mathematical recursion is grounded in finitism, the rejection of all things infinite.
In The Little Schemer, Daniel Friedman and Matthias Felleisen taught recursion in Scheme through dialogue, arguing that the requirements to be a successful learner was not analytical reasoning but pattern recognition. Running the Ackermann function with m = 4 results in a StackOverflowError and no optimizations are straightforward to leverage, not tail recursion, not managing the call stack manually in heap memory. My desire for an algebraic list processing language for artificial intelligence work on the IBM 704 computer arose in the summer of 1956 during the Dartmouth Summer Research Project on Artificial Intelligence which was the first organized study of AI… While expressions could be handled easily in FLPL, and it was used successfully for the Geometry program, it had neither conditional expressions nor recursion, and erasing list structure was handled explicitly by the program.
Or read this on Hacker News