1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 04:10:18 +02:00
guile/module
Andy Wingo bb0229b51d add with-fluids objects and primitive syntax
* libguile/tags.h (scm_tc7_with_fluids): Allocate a tc7 for
  "with-fluids" objects, which will only live on the dynamic stack (wind
  list), not in normal scheme-land.

* libguile/fluids.h (SCM_WITH_FLUIDS_P, SCM_WITH_FLUIDS_LEN)
  (SCM_WITH_FLUIDS_NTH_FLUID, SCM_WITH_FLUIDS_NTH_VAL)
  (SCM_WITH_FLUIDS_SET_NTH_VAL): Add some accessors.
* libguile/fluids.c (scm_i_make_with_fluids, scm_i_swap_with_fluids):
  New internal functions.
  (scm_c_with_fluids, scm_c_with_fluid): Push with-fluids objects on the
  dynwind list, not winders.

* libguile/dynwind.c (scm_i_dowinds): Add cases for winding and
  unwinding with-fluids objects.

* libguile/memoize.h (scm_sym_with_fluids, SCM_M_BEGIN): New public
  data.
* libguile/memoize.c (scm_m_with_fluids): Define with-fluids as a
  primitive syntax.
  (unmemoize): Add with-fluids case.

* libguile/eval.c (eval):
* module/ice-9/eval.scm (primitive-eval): Add with-fluids cases.

* test-suite/tests/fluids.test
  ("fluids not modified if nonfluid passed to with-fluids"): Enable a
  now-passing test.
2010-02-18 22:15:43 +01:00
..
ice-9 add with-fluids objects and primitive syntax 2010-02-18 22:15:43 +01:00
language rename <dynamic-wind> to <dynwind> 2010-02-18 22:15:43 +01:00
oop eval.c closures are now applicable smobs, not tc3s 2009-12-04 19:20:11 +01:00
rnrs Provide Guile-friendly `coding:' meta-data. 2010-01-11 01:21:13 +01:00
scripts fix doc snarfing with fedora 12 2010-01-17 18:22:51 +01:00
srfi Inline SRFI-9 constructors too. 2010-02-01 00:25:51 +01:00
sxml import statprof, sxml, and texinfo from guile-lib 2009-12-21 00:01:13 +01:00
system `load' doesn't cause the compiler to be loaded in some cases 2010-02-16 21:15:40 +01:00
texinfo fix texinfo reflection for procedures 2010-01-12 22:50:10 +01:00
Makefile.am Add `(ice-9 vlist)'. 2010-02-03 00:02:14 +01:00
statprof.scm statprof bugfixes 2010-01-27 21:52:05 +01:00
texinfo.scm Remove unused top-level variables. 2010-01-11 01:21:14 +01:00