1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-26 13:10:22 +02:00
guile/module/language
Andy Wingo 60d4b22448 compiler support for letrec*
* test-suite/tests/tree-il.test ("letrec"): Add some tests.
* module/language/tree-il/compile-glil.scm (flatten): Add support for
  compiling letrec* in its unoptimized form.

* module/language/tree-il/fix-letrec.scm (simple-expression?):
  Parameterize, so that letrec* will not treat `(car x)' as primitive
  (because it could raise an exception).
  (partition-vars): Lump unreferenced vars in with complex vars, when
  compiling letrec*.
  (fix-letrec!): No need to evaluate inits within a let for letrec*.
2010-06-17 13:43:26 +02:00
..
assembly rename (rnrs bytevector) to (rnrs bytevectors) 2010-06-01 13:26:11 +02:00
brainfuck remove `version' field from <language> 2010-05-02 11:19:13 +02:00
bytecode remove `version' field from <language> 2010-05-02 11:19:13 +02:00
ecmascript remove `version' field from <language> 2010-05-02 11:19:13 +02:00
elisp beginnings of letrec* support in the expander 2010-06-17 13:43:26 +02:00
glil rename (rnrs bytevector) to (rnrs bytevectors) 2010-06-01 13:26:11 +02:00
objcode Add program-free-variables' to (system vm program)'. 2010-05-07 13:47:52 +02:00
scheme fix a comment about environments and the scheme compiler 2010-05-02 11:19:46 +02:00
tree-il compiler support for letrec* 2010-06-17 13:43:26 +02:00
value remove `version' field from <language> 2010-05-02 11:19:13 +02:00
assembly.scm rename (rnrs bytevector) to (rnrs bytevectors) 2010-06-01 13:26:11 +02:00
glil.scm prompt handlers are always inline 2010-02-19 15:30:34 +01:00
objcode.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
tree-il.scm beginnings of letrec* support in the expander 2010-06-17 13:43:26 +02:00