Hi, Here are some notes that Brian Templeton had sent me at the end of the recent SoC that didn't make it to the list, for posterity. recent changes pushed: * Unbound fluids should be ready for inclusion in Guile (I also added `variable-unset!' for "undefining" variables) * Function bindings are no longer special; this increases TAK performance somewhat, and shouldn't introduce serious compatibility problems (cl.el `flet' is only used ~30 times in Emacs's packages, and some of those uses would work just as well with lexical `flet') * I ported the rest of the Gabriel benchmarks to Elisp (only minor changes required for thirty-year-old code -- Lisp is quite a stable language family!); I'm not sure what the copyright/license status of the orginial code is, so it may not be able to go into Guile but is useful nonetheless. Gabriel benchmarks attached, along with bench2.el and bench2.scm. Use bench2.el by evaluating (in *scratch*) (bpt-repeat X (bpt-time* Y (lambda () BENCHMARK))), where X and Y are integers, and BENCHMARK runs the benchmark once (e.g. "(tak 18 12 6)"). Use bench2.scm by evaluating (repeat X (time Y BENCHMARK)) Elisp functions are in `(language elisp runtime function-slot)', and are stored directly in the module rather than in fluids after the lexical function bindings change. * More Elisp subrs added, mostly wrapping guile procedures; there aren't really many nontrivial subrs or special forms left that make sense without Emacs integration. "boot.el" is attached. * Trivial compatibility fixes. Also, initial attempt at "wide symbols" patch attached -- it only adds slots to variable objects, and doesn't have VM or Elisp compiler integration. All if this was merged in. The files he attached were as follows: