Things still to be done in Perlmacs development:

Make Emacs namespace-clean.

Check for memory leaks.

Debianize.

Change to XEmacs. (?)

Find out how `describe-function' works and fix its behavior for Perl
code objects.  Better: do it for any foreign code object.

Eliminate Fperl_phase and Fperl_status by making the Perl interpreter
object a vector. (but tampering with phase could be bad)

Add a Perl interface to the QUIT macro.

Make it possible to initialize Perl before dumping - requires the
addition of an init_perlmacs() function.

Change the to_string method of Lisp foreign objects into a print
method, and implement it for Perl data types.  Every data type except
CODE should be serializable a la Storable.  For bonus points, do CODE
too, a la B::Deparse.  Voila: Perl-to-Lisp compiler!

Mutex perlmacs_funcall and perlmacs_call_emacs_main for threaded Perl.
Release during call_perl.  Do the TODO in Emacs::Lisp about avoiding
funcall for data access functions.  Write a Lisp evaluator in Perl.
Voila: threaded Emacs!
