X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=TODO;h=fb776be0a6a050906efce132273f24a578746ad5;hb=67d2b80e478824a46317419f076ab1f6b020f6b1;hp=f8752b439acf37dfe8ce3022cb053c5798b59b84;hpb=104ee7ee303efa16e415f5e75df635ac54dba733;p=sbcl.git diff --git a/TODO b/TODO index f8752b4..fb776be 100644 --- a/TODO +++ b/TODO @@ -1,34 +1,9 @@ -for 0.7.0: - -* filed off the roughest edges (or, perhaps, at least hammered down the - protruding rusty nails and snipped off the trailing razor wire, - leaving some filing for later:-) from the monster - EVAL/EVAL-WHEN/%COMPILE/DEFUN/DEFSTRUCT cleanup: -* more renaming (esp. for global as opposed to lexical names): - ** reserved DO-FOO-style names for iteration macros - ** s/ARGUMENT/ARG/ - ** perhaps s/DEF-FROB/DEF/ or s/DEF-FROB/DEFINE/ - ** merged SB-C-CALL into SB-ALIEN -* Perhaps rename "cold" stuff (e.g. SB-COLD and src/cold/) to "boot". -* fixed CREDITS, since it's gone pretty stale -* reviewed NEWS -* pending patches and bug reports that go in (or else get handled - somehow, rejected/logged/whatever) before 0.7.0: -======================================================================= for early 0.7.x: -* patches postponed until after 0.7.0: - ** CSR "rough patch to fix bug 106" 2001-10-28 - ** Alexey Dejneka "bug 111" 2001-12-30 -* building with CLISP (or explaining why not). This will likely involve - a rearrangement of the build system so that it never renames - the output from COMPILE-FILE, because CLISP's COMPILE-FILE - outputs two (!) files and as far as I can tell LOAD uses both - of them. Since I have other motivations for this rearrangement - besides CLISPiosyncrasies, I'm reasonably motivated to do it. +* building with CLISP (or explaining why not) * urgent EVAL/EVAL-WHEN/%COMPILE/DEFUN/DEFSTRUCT cleanup: ** made inlining DEFUN inside MACROLET work again - ** (also, while working on INLINE anyway, it should be easy + ** (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) ** fixed bug 137 (more) @@ -39,28 +14,32 @@ for early 0.7.x: (so that slam.sh will run faster and also just because ideally everything would be in cold init) ** profiled and tweaked +* fixed (TRACE :REPORT PROFILE ...) interface to profiling * more EVAL/EVAL-WHEN/%COMPILE/DEFUN/DEFSTRUCT cleanup: ** made %COMPILE understand magicality of DEFUN FOO w.r.t. e.g. preexisting inlineness of FOO ** used %COMPILE where COMPILE-TOP-LEVEL used to be used ** removed now-redundant COMPILE-TOP-LEVEL and FUNCTIONAL-KIND=:TOP-LEVEL stuff from the compiler - ** made FUNCTION-NAME logic work on closures, so that + ** (ideally, but perhaps too hard, given what I've discovered + about the godawful internals of function debug names): + made FUNCTION-NAME logic work on closures, so that various public functions like CL:PACKAGEP which are now implemented as closures (because they're structure slot accessors) won't be so nasty in the debugger - ** %SLOT-ACCESSOR/%SLOT-ACCESSOR stuff can probably go away, - since we inline expand all slot accessors into - %INSTANCE-REF and the optimizer knows all it needs - to know about that. * 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 does what it should..) + now that EVAL-WHEN works correctly..) ** incomplete manual - ** :IGNORE-ERRORS-P cruft in stems-and-flags.lisp-expr + ** :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 @@ -79,14 +58,13 @@ 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 is +* 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 -* made system handle stack overflow safely unless SAFETY is dominated - by SPEED or SPACE -* Probably get rid of or at least rework the fdefinition/encapsulation - system so that (SYMBOL-FUNCTION 'FOO) = (FDEFINITION 'FOO). +* Either get rid of or at least rework the fdefinition/encapsulation + system so that (SYMBOL-FUNCTION 'FOO) is identically equal to + (FDEFINITION 'FOO). ======================================================================= for 0.9: @@ -163,7 +141,7 @@ are still welcome!) until after 1.0: out of scope. (However, it still might be possible to determine that some or all of them are hopelessly stale and delete them.) -=============================================================================== +======================================================================= other known issues with no particular target date: bugs listed on the man page