3 ms·
Chicken's output is necessarily a bit weird. It uses CPS and generates output in a specific way so it can avoid a stack overflow. See: https://en.wikipedia.org
by fao_ 8y ago
Chicken's output is necessarily a bit weird. It uses CPS and generates output in a specific way so it can avoid a stack overflow.
See: https://en.wikipedia.org/wiki/CHICKEN_(Scheme_implementation)#Design https://en.wikipedia.org/wiki/CHICKEN_(Scheme_implementation...
http://home.pipeline.com/~hbaker1/CheneyMTA.html http://home.pipeline.com/~hbaker1/CheneyMTA.html
- bitwize 8y agoYes, and Pre-Scheme deliberately avoids implementing all of Scheme in order to emit straightforward C. Gambit and Chicken are fine programs -- close to best of breed in the Scheme->C transpiler space. Pre-Scheme was intended to map straightforwardly onto C semantics so that applications like the one for which it was designed -- implementing the Scheme48 VM -- could be coded and tested in a Lisp environment before being transpiled to understandable C code. They sacrificed full Scheme semantics for this.