guile-elisp bootstrap (C)
authorBT Templeton <bt@hcoop.net>
Mon, 23 Sep 2013 07:40:05 +0000 (03:40 -0400)
committerRobin Templeton <robin@terpri.org>
Mon, 9 Feb 2015 18:04:23 +0000 (13:04 -0500)
commitec8b67a485854624f47e45eaf8fea7d1355a41ef
tree189eb0e3b39660340c6faa91543ff70a508b9d64
parent66d2ddd53ad1fa41c60a96985d788a3c5495be31
guile-elisp bootstrap (C)

* src/alloc.c (initialize_symbol): Remove. All callers changed.

* src/data.c (Ffboundp, Fmakunbound, Ffmakunbound, Fsymbol_function)
  (Ffset): Call the corresponding Guile-Elisp functions.
  (Fbind_symbol): New function.

* src/emacs.c (string_from_scheme): New function.
  (main2): Resolve modules instead of defining them.
  Set `make-lisp-string'. Call `emacs!'.

* src/eval.c (For, Fand, Fcond, Fprog1, Fprog2, Fbind_symbol): Remove.

* src/lisp.h (XSYMBOL): Use `symbol-desc' from Guile-Elisp.
  (SYMBOL_NAME, SYMBOL_INTERNED_P, SYMBOL_FUNCTION):
  (WRAP1, WRAP2): New macros.
  (set_symbol_function, symbol_plist, set_symbol_plist): Call the
  corresponding Guile-Elisp function.

* lread.c (init_obarray): Use Guile-Elisp's unbound symbol object.
  (Ffind_symbol): Return the symbol if it is present in the obarray.
src/alloc.c
src/data.c
src/emacs.c
src/eval.c
src/lisp.h
src/lread.c