JEmacs Implementation Status
This is very incomplete and in itself very a work-in-progress.
Think of this as a very incomplete reminder list of what needs
to be done, as well as noting what is working.
ELisp Syntax
- ;;;###autoload:  Works.
- save-excursionworks.
- save-current-bufferworks.
- unwind-protectworks.
ELisp core
Various non-trivial Elisp files compile and load without complaint.
However, that does not necessarily mean they work!
- read: Pasring of Emacs-style s-expressions mostly works.
- print:  Prints in Scheme format.
- Dynamic name scoping (works).
- Buffer-local variables (mostly works).
- defmacrodoesn't work, for some undetermined reason.
- purecopyis just identity.  A possible improvement would
force compile-tiem evaluation to a literal.
Strings
- format:  Framework and most common cases work.
Interaction
- No mini-buffer.  (Uses pop-up dialog window where Emacs uses mini-buffer.)
- No each area.  (Messages are written on console.)
- interactive:  Basic framework implemented.
Only string argument implemented.  Most specifiers are ignored.
- Selection sets point and mark, but otherwise not handled properly.
- call-interactivelyworks.
- interactive-pis hardwired to- nil.
One possible implementation is to examine the output from- new Throwable().printStackTrace(...).
A possibly-more efficient implementation is to make it a macro for- (eq? (%buffer-current-command) --this-function--).
Common Lisp extensions
- Default values for optional parameters (works).
- typep: Basic framework works; only (some) simple type
names work.  Any Java fully-qualified Java classname be used as type specifier.
Most type names cause- typepto be inlined.
- There is a almost-complete implementation of CL-style formatwhich could be made available under the nameformat*
    Per Bothner
Last modified: Mon Jun 19 23:53:37 PDT 2000