
Master source is currently on white.  Need to make a new world on
white.  Need to copy source back to mac and recompile everything there
as well.

-----------------------------------------------------------------------

Notes on lisp-source:

Below is a list of things that still need work.  Look in ChangeLog for
a number of changes that were made to for consistency between mcl and
lucid.  Also look in ChangeLog for a number of specific notes about
mcl-*.lisp files.

General:
- Lots of warnings about undefined functions.  Some of these are fine,
  but there are probably some of them that are real problems.  It's 
  gonna be a hassle to sort them all out.
- Default startup package is CL-USER in MCL, but it is USER in Lucid.
  We could make OBVIUS start up in CL-USER in Lucid (make CL-USER be a
  nickname for USER).  Steele says CL-USER is the wave of the future.
- Mode of files copied from Mac to Sun is wrong (executable, world-write)

viewable.lisp:
- Our redefinition of "set" doesn't work as desired.  Apparently, the 
  following two expressions are different in mcl:
      (set 'im (make-image 9))
      (setq im (make-image 9))
  The latter does not call set!

image.lisp
- Ugly system dependent stuff in initialize-instance for one-d-images.
  Lucid code:
    (loop for default in (CLOS::class-default-initargs (find-class 'one-d-image))
	  do (setf (getf initargs (nth 0 default)) (funcall (nth 1 default))))
  MCL code:
    (loop for default in (CLOS::class-default-initargs (find-class 'one-d-image))
	  do (setf (getf initargs (nth 0 default)) 
                   (get-default 'one-d-image (nth 0 default)))))

matrix.lisp:
- Problems with declare-matrices macro.  Replaced definition of 
  declare-matrices with a dummy definition.

contour-plot.lisp
- busted.  compilation does not succeed.

mcl-defsys.lisp:
- Does REQUIRE compile or just load?
- Need to figure out best way to load C libraries.  Currently, we
  (obv-source-load "mci-ffi") at the end of load-C-libraries.
- Why are we source-loading mcl-ffi.lisp?
- Should speed loading of C code

mcl-ffi-macros.lisp:
- Should optimize, e.g., turn off type checking in make-deffcfun.

mcl-repl.lisp:
- Haven't dealt with REPL yet.  It doesn't need to do much
  since mcl already provides ccl::eval-enqueue.  I think it only 
  needs to deal with auto display.  It looks like the relevant
  documentation is on p. 653-655.

fred-hacks.lisp:
- FRED interface needs lots of work.

mcl-site-paths.lisp:
- *default-printer* defined in mcl-site-paths.lisp.  This needs to
  be there so that hardcopy.lisp will compile.  But things will 
  probably have to change because printing is different on the mac.

mcl-hacks.lisp:
- with-locked-pane currently does nothing.  Need to deal with this
  when we figure out how to handle events using mcl's eval-enqueue.
- with-scheduling-inhibited currently calls without-interrupts.  I'm 
  not sure if that's the right behavior.

mcl-screen.lisp (modified from lv-screen):
- Not dealing with blting yet, so I didn't deal with find-color and
  registered colors.  Color maps don't appear to be supported by MCL.
  This is going to be a bit of a hassle.
- setf background: didn't bother setting background of control panel
  because I'm not sure we're going to have one.
- There are a bunch of functions and methods that I left out
  until we figure out how to deal with color maps:
      destroy method on screen
      set-gray-lut
      set-color-lut
      allocate-pseudo-colors
- Decided that default background is :white.  So needed to change default
  foreground of all drawing picture types to be :black.  For now, put 
  lots of set-defaults in mcl-obvius-init.lisp

mcl-window.lisp:
- take another look at the various methods for destroying a pane
  including: destroy methods (in mcl-window and pane.lisp),
  ccl::window-close (in mcl-window), and (setf (status pane) :destroyed)
  in mcl-window.
- view-draw-contents still needs work (look at comment above defmethod).
  Works fine when window is selected, but wrong behavior when window
  is resized.

mcl-draw.lisp:
- Problem with draw-lines, draw-circles, etc.  The quickdraw interface
  (functions like move-to and line-to) want '(signed-byte 16).  We 
  have arrays of fixnums, i.e., '(signed-byte 32).  So I coerce these
  32bit things into 16bits.  Is that slow?

Tested a bunch of stuff in obvius tutorial
- grays, bitmaps currently don't display
- overlay of df's busted for some reason in reset-picture-defaults.
  Seems to have to do with trying to evaluate 'graph as the default 
  :display-type.  We know that there are minor differences in behavior 
  of clos extensions between lucid and mcl.

-----------------------------------------------------------------------

Notes on c-source and mcl-ffi.lisp:

Below is a list of things that still need work.  Look in ChangeLog for
a number of changes that were made to for consistency between Sun and Mac.

General:
- what's the deal with fprintf??
- Do we need to worry about fabs -> dabs or something like that, since
  we've redefined float??

mpw-hacks.c:
- drand48() substitute: need to check if random numbers generated by this
  hack are efficient enough

MakeFile:
- Removed optimizations ( -opt off ) for the time being.
  An additional fact related to optimization:
  CSANELib881.o busts passing doubles (floats) from MCL to MPW C Code.
  Using CSANELib.o works find. Why? Also, Math881.o does not bust it.

---------------------------------------------------------------------------
