guile-elisp bootstrap (C)
authorRobin Templeton <robin@terpri.org>
Wed, 25 Jun 2014 02:24:52 +0000 (22:24 -0400)
committerRobin Templeton <robin@terpri.org>
Mon, 20 Apr 2015 01:24:18 +0000 (21:24 -0400)
commit71337ddacd786a5e01c7c78213d4f805162b21fe
tree014e763ef11955bf8bab0f71e6f0b918ebba25c8
parent69f7f524c06e73df84e30a54aafd2c342392b5b3
guile-elisp bootstrap (C)

* src/data.c (Fsetq_default): Remove

* src/editfns.c (Fsave_excursion, Fsave_current_buffer)
  (Fsave_restriction): Change to functions taking thunks as arguments.

* src/eval.c (eval_fn, funcall_fn): New variables.
  (init_eval_once): Increase initial vales of max_specpdl_size and
  max_lisp_eval_depth. Define eval_fn and funcall_fn.
  (Fif, Fsetq, Fquote): Remove.
  (Ffunction): Don't define as DEFUN.
  Whitespace change.
  (Fdefvar, Fdefconst, FletX, Flet): Remove.
  (Fcatch): Take thunk as evaluated argument.
  (Funwind_protect): Remove.
  (Fcondition_case): Replace with Fcall_with_handler.
  (eval_sub_1): Only supported compiled and Scheme procedures.
  (Fapply): Don't define as DEFUN.
  (Ffuncall1): Don't define as DEFUN. Just call funcall_fn.
  (syms_of_eval): Don't unintern internal-interpreter-environment.

* src/fns.c (Fwidget_apply): Call `apply' instead of Fapply.

* src/keyboard.c (Ftrack_mouse): Take thunk as evaluated argument.

* src/lisp.h (WRAP1): Define a global symbol for the wrapped function.
src/data.c
src/editfns.c
src/eval.c
src/fns.c
src/keyboard.c
src/lisp.h