1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-23 04:50:28 +02:00
guile/module/language/ecmascript
Andy Wingo 7e01997e88 finish support for optional & keyword args; update ecmascript compiler
* libguile/_scm.h (SCM_OBJCODE_MINOR_VERSION): Bump.
* libguile/vm-i-system.c (br-if-nargs-ne, br-if-args-lt)
  (br-if-nargs-gt): New instructions, for use by different lambda cases.
  (bind-optionals, bind-optionals/shuffle, bind-kwargs): New
  instructions, for binding optional and keyword arguments. Renumber
  other ops.

* module/language/ecmascript/compile-tree-il.scm (comp, comp-body):
  Update for new tree-il. Use the new optional argument mechanism
  instead of emulating it with rest arguments.

* module/language/glil/compile-assembly.scm (glil->assembly): Tweaks for
  optional and keyword argument compilation.

* module/language/tree-il.scm (parse-tree-il, unparse-tree-il): Make the
  else case optional, in the s-expression serialization of tree-il.

* module/language/tree-il/compile-glil.scm (flatten): Handle all of the
  lambda-case capabilities.
2009-10-23 15:10:25 +02:00
..
array.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
base.scm Fix typos leading to unbound variable references. 2009-10-22 22:57:25 +02:00
compile-tree-il.scm finish support for optional & keyword args; update ecmascript compiler 2009-10-23 15:10:25 +02:00
function.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
impl.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
parse-lalr.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
parse.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
spec.scm language-readers receive environment as an arg 2009-10-16 13:39:24 +02:00
tokenize.scm Remove unused variables in system/language. 2009-09-21 00:36:31 +02:00