1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-28 07:50:20 +02:00
guile/module/language/tree-il
Andy Wingo 39caffe79b remove @apply memoizer
* libguile/memoize.c (memoize): Recognize a primcall to 'apply as
  SCM_M_APPLY.
  (@apply): Remove @apply memoizer.
  (unmemoize): Unmemoize using "apply", not "@apply".

* libguile/memoize.h:
* libguile/expand.c (scm_sym_atapply): Remove.

* module/ice-9/boot-9.scm (apply): Re-implement using apply primcall.
  Use case-lambda, so as to give an appropriate minimum arity.

* module/language/tree-il/compile-glil.scm (flatten-lambda-case):
  Compile a primcall of "apply" specially, not "@apply".

* module/language/tree-il/peval.scm (peval): Match primcalls to "apply",
  not "@apply".  Residualize "apply" primcalls.

* module/language/tree-il/primitives.scm (*interesting-primitive-names*):
  (*multiply-valued-primitives*): Remove @apply, and apply primitive
  expander.

* test-suite/tests/peval.test:
* test-suite/tests/tree-il.test: Update tests to expect residualized
  "apply".

* test-suite/tests/procprop.test ("procedure-arity"): Update test for
  better apply arity.

* test-suite/tests/strings.test ("string"): Update expected error.
2013-06-27 22:02:35 +02:00
..
analyze.scm <dynwind> no longer has "pre" or "post" fields 2013-06-16 16:51:28 +02:00
canonicalize.scm Implement tree-il-fold in terms of make-tree-il-folder. 2013-06-10 22:46:08 +02:00
compile-glil.scm remove @apply memoizer 2013-06-27 22:02:35 +02:00
cse.scm <dynwind> no longer has "pre" or "post" fields 2013-06-16 16:51:28 +02:00
debug.scm <dynwind> no longer has "pre" or "post" fields 2013-06-16 16:51:28 +02:00
effects.scm <dynwind> no longer has "pre" or "post" fields 2013-06-16 16:51:28 +02:00
fix-letrec.scm Tree-il post-order rewriter no longer destructive 2013-06-10 22:46:08 +02:00
inline.scm separate peval and a new canonicalization pass into their own modules 2011-09-28 19:39:39 +02:00
optimize.scm Pre-order tree-il rewrites are now non-destructive 2013-06-10 22:46:08 +02:00
peval.scm remove @apply memoizer 2013-06-27 22:02:35 +02:00
primitives.scm remove @apply memoizer 2013-06-27 22:02:35 +02:00
spec.scm Merge remote-tracking branch 'origin/stable-2.0' 2013-01-31 11:52:42 +01:00