Thu Oct 20 13:50:41 EDT 2011
- Representing functions in nested let / letrec form is
straightforward if the following limitations are kept in mind:
* let can only bind primitive function calls (no call stack)
* tail calls need to be calls to functions defined by letrec.
- Question: is absence of "return" a problem? At first sight it
doesn't seem so, as it can be implemented by a call to a function
higher up the lexical ladder.
- Question: while this is enough to represent loops, there is still an
open problem about how to represent array loads and stores.