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>
Sun, 19 Apr 2015 19:46:18 +0000 (15:46 -0400)
commitd1c3da7b87087d7da58128aaf84afaeaeae971eb
tree2b0dd90ca952c19ba91baa7f1ccceb82cc67b93c
parenta908f3e2243a7ac8bad75204a5be2b93bbbc749e
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