1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 22:31:12 +02:00
guile/module/language
Andy Wingo b15dea6857 Replace eval-case with eval-when
* module/ice-9/boot-9.scm (eval-when): Replace eval-case with eval-when.
  Eval-when is *much* simpler, and more expressive to boot. Perhaps in
  the future we'll get 'visit and 'revisit too.

* module/ice-9/deprecated.scm (eval-case): Provide mostly-working
  deprecated version of eval-case.

* module/ice-9/boot-9.scm (defmacro, define-macro): Relax condition: we
  can make defmacros that are not at the toplevel now. But in the future
  we should replace this implementation of defmacros with one written in
  syntax-case.
  (define-module, use-modules, use-syntax): Allow at non-toplevel.
  (define-public, defmacro-public, export, re-export): Don't evaluate at
  compile-time, I can't see how that helps things. Allow `export' and
  `re-export' at non-toplevel.

* module/ice-9/getopt-long.scm:
* module/ice-9/i18n.scm:
* module/oop/goops.scm:
* module/oop/goops/compile.scm:
* module/oop/goops/dispatch.scm: Switch to use eval-when, not
  eval-case.

* module/language/scheme/compile-ghil.scm (eval-when): Replace eval-case
  transformer with eval-when transformer. Sooooo much simpler, and it
  will get better once we separate expansion from compilation.

* module/language/scheme/expand.scm (quasiquote): Hm, expand quasiquote
  properly. Not hygienic. Syncase needed.
  (lambda): Handle internal defines with docstrings propertly.
2009-03-06 13:29:13 +01:00
..
assembly Aggregate makefiles for module/system' and module/language'. 2009-02-24 23:54:16 +01:00
bytecode Aggregate makefiles for module/system' and module/language'. 2009-02-24 23:54:16 +01:00
ecmascript make the ES compiler more readable via use of -> 2009-02-27 16:25:32 +01:00
elisp remove .cvsignore files 2008-11-10 12:17:18 +01:00
ghil slight optimization in transform-record, note in optimize* 2009-02-27 13:37:35 +01:00
glil Aggregate makefiles for module/system' and module/language'. 2009-02-24 23:54:16 +01:00
objcode Aggregate makefiles for module/system' and module/language'. 2009-02-24 23:54:16 +01:00
r5rs remove GPKG.def files 2009-01-29 21:12:00 +01:00
scheme Replace eval-case with eval-when 2009-03-06 13:29:13 +01:00
value Aggregate makefiles for module/system' and module/language'. 2009-02-24 23:54:16 +01:00
assembly.scm Add `load-unsigned-integer' instruction. 2009-02-18 00:54:05 +01:00
ghil.scm use common slots mechanism in ghil 2009-02-27 10:53:00 +01:00
glil.scm be smarter about allocating local variables, reusing slots if possible 2009-02-21 20:28:29 +01:00
objcode.scm static opcodes; refactor program/objcode division; use new assembly pipeline 2009-01-29 21:12:00 +01:00