0.pre8.105
[sbcl.git] / TODO
diff --git a/TODO b/TODO
index 2ec4472..561c9bd 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,10 +1,9 @@
-for late 0.7.x:
+for early 0.8.x:
 
 * test file reworking
-       ** *.pure.lisp tests run with assertoid.lisp loaded; assertoid
-               is moved to its own package, for use in *.impure.lisp.
        ** non-x86 ports now pass irrat.pure.lisp
-       ** sparc and ppc now pass bit-vector.impure-cload.lisp
+       ** ports with less than 256Mb of heap (sparc, ppc and mips)
+               now don't fail bit-vector.impure-cload.lisp
 * faster bootstrapping (both make.sh and slam.sh)
        ** added mechanisms for automatically finding dead code, and
                used them to remove dead code
@@ -39,6 +38,9 @@ for late 0.7.x:
 * miscellaneous simple refactoring
        * belated renaming:
                ** renamed %PRIMITIVE to %VOP
+               ** A few hundred things named FN and FCN should be
+                       named FUN (but maybe not while drichards is
+                       working on a Windows port).
        * These days ANSI C has inline functions, so..
                ** redid many cpp macros as inline functions: 
                        HeaderValue, Pointerp, CEILING, ALIGNED_SIZE,
@@ -53,13 +55,20 @@ for late 0.7.x:
 =======================================================================
 for 0.9:
 
+[ note: much of the below refers to preparation for merging SB-PCL:FOO
+  and CL:FOO.  However, it turned out to be surprisingly
+  straightforward to do this notional end goal without doing many of
+  the preparatory operations.  That doesn't mean that plenty of the
+  goals below aren't worthwhile, but the motivation is somewhat
+  different. ]
+
 * refactored in preparation for moving CLOS into cold init and merging
        SB-PCL:FOO with CL:FOO (for FOO=CLASS, FOO=CLASS-OF, etc.)
-       ** systematized support for MOP (new regression tests, maybe
-               new SB-MOP package..) to try to make sure things don't
-               get mislaid in the upcoming CLOS restructuring
-       ** extracted type system from SB-KERNEL into new SB-TYPE
-               package
+       ** systematized support for MOP (more regression tests, maybe) 
+               to try to make sure things don't get mislaid in the 
+               upcoming CLOS restructuring
+       ** extracted type system (and maybe CLASSOIDs) from SB-KERNEL 
+               into new SB-TYPE package
        ** reimplemented GENERIC-FUNCTION as a primitive object (or
                maybe made SB-MOP:FUNCALLABLE-STANDARD-OBJECT the
                primitive object, and then let GENERIC-FUNCTIONs
@@ -90,7 +99,6 @@ for 0.9:
 * (maybe) more refactoring in preparation for merging SB-PCL:FOO
        into CL:FOO: reimplemented type system OO dispatch
        (!DEFINE-TYPE-METHOD, etc.) in terms of CLOS OO dispatch
-* merged SB-PCL:FOO into CL:FOO (and similarly CLASS-OF, etc.)
 * added some automatic tests for basic binary compatibility, in hopes
        that it might be practical to maintain binary compatibility
        between minor maintenance releases on the stable branch (but no
@@ -110,6 +118,10 @@ other priorities, no particular time:
        personal itch): I don't want socket-level stuff so much as I
        want RPC-level or higher (CORBA?) interfaces and (possibly
        through RPC or CORBA) GUI support
+* Especially when ldb is not compiled in, the default "assertion failed"
+       behaviour in many parts of the runtime is unfriendly.  It may
+       be appropriate to look at some of these and see if they can be 
+       handled in some less abrupt way than aborting
 =======================================================================
 important but out of scope (for WHN, anyway: Patches from other people
 are still welcome!) until after 1.0: