X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=TODO;h=ab13f0c01636ea7905da9dfd7f87d3f4e7d19111;hb=3b91bf9e9daf110b35dd8d5b6ca5a88e0fb0f13b;hp=437746ff6ebc890ce619013943d58c14346af360;hpb=d75b4eb603f1e9e366997c8e378fe0ae0d79b5d9;p=sbcl.git diff --git a/TODO b/TODO index 437746f..ab13f0c 100644 --- a/TODO +++ b/TODO @@ -1,13 +1,9 @@ -for early 0.7.x: +for late 0.7.x: -* urgent EVAL/EVAL-WHEN/%COMPILE/DEFUN/DEFSTRUCT cleanup: - ** made inlining DEFUN inside MACROLET work again - ** (also, while working on INLINE anyway, it might be easy - to flush the old MAYBE-INLINE cruft entirely, - including e.g. on the man page) * test file reworking ** 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 @@ -29,28 +25,23 @@ for early 0.7.x: are now implemented as closures (because they're structure slot accessors) won't be so nasty in the debugger -* rewrote long-standing confusing error restarts for redefining - DEFSTRUCTs * outstanding embarrassments - ** cut-and-pasted DEF-BOOLEAN-ATTRIBUTE (maybe easier to fix - now that EVAL-WHEN works correctly..) - ** incomplete manual ** :IGNORE-ERRORS-P cruft in stems-and-flags.lisp-expr. (It's reasonable to support this as a crutch when initially bootstrapping from balky xc hosts with their own idiosyncratic ideas of what merits FAILURE-P, but it's embarrassing to have to use it when bootstrapping under SBCL!), - ** weird double-loading (first in GENESIS, then in warm init) - of src/assembly/target/*.lisp stuff, and the associated - weirdness of the half-baked state (compiler almost but - not quite ready for prime time..) of the system after - cold init * fixups now feasible because of pre7 changes - ** ANSIfied DECLAIM INLINE stuff (deprecating MAYBE-INLINE) + ** ANSIfied DECLAIM INLINE stuff (deprecating MAYBE-INLINE, + including e.g. on the man page) * 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 dan_b is + working on a threads branch and 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, @@ -59,16 +50,9 @@ for early 0.7.x: os_trunc_foo(), os_round_up_foo() ** removed various avoid-evaluating-C-macro-arg-twice cruft -* added mechanisms for automatically finding dead symbols in - package-data.lisp-expr (i.e. those symbols not bound, - fbound, defined as types, or whatever), and used them - to remove dead symbols * Either get rid of or at least rework the fdefinition/encapsulation system so that (SYMBOL-FUNCTION 'FOO) is identically equal to (FDEFINITION 'FOO). -* building using CLISP (since building under OpenMCL works, this is - reduced to "it would be nice" rather than "as proof of concept") - ======================================================================= for 0.9: