From: Stephen Adams Date: Tue, 12 Mar 1996 17:13:42 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: 20090517-FFI~5652 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=cf419423de0f55525bece14180b8c037cc3fffbd;p=mit-scheme.git *** empty log message *** --- diff --git a/v8/src/compiler/TODO b/v8/src/compiler/TODO index df962600b..717125956 100644 --- a/v8/src/compiler/TODO +++ b/v8/src/compiler/TODO @@ -1,4 +1,4 @@ -$Id: TODO,v 1.2 1995/08/28 13:29:07 adams Exp $ +$Id: TODO,v 1.3 1996/03/12 17:13:42 adams Exp $ Problems: @@ -22,7 +22,7 @@ form. This would save 10 pairs per stack reference. [] Why is the new code not more than 12% faster than the old code? -[] Move split earlier, to after applicat. +[DONE] Move split earlier, to after applicat. [] Make split introduce closures with no code pointer as tuples. @@ -35,9 +35,13 @@ and give up if that much is not free after every GC. than having to test a wierd combination of the form, name and type slots. -[] Figure out a way to get some debugging information (even just an -expression) into the `local' continuations. Getting an environment is -harder but worth-while. +[] Dataflow does not have to keep the transitive closure. This could +save lots of space. + + +[PARTLY DONE] Figure out a way to get some debugging information (even +just an expression) into the `local' continuations. Getting an +environment is harder but worth-while. [] Fix lamlift, split and friends to maintain alpha-conversion wrt extra stubs. @@ -46,6 +50,7 @@ extra stubs. Prescan the whole program to see if a letrec label is used in a %make-trivial-closure. + [] RTLGEN. RTLGEN should be rewritten in the following way to generate better @@ -79,12 +84,13 @@ Missing functionality [] Implement checked primitive procedures. This requires a preserving call to arbitrary primitives and debugging info for preservations. - +PARTLY DONE -- type based rewriting replaces primitives with unchecked +versions if possible. Implementation strategies -[] Make all variables in the source code be represented by structures -to allow instant lookup. Requires strict alpha conversion. +[UNLIKELY] Make all variables in the source code be represented by +structures to allow instant lookup. Requires strict alpha conversion. Extra functionality @@ -123,10 +129,10 @@ carefully this might cause lots of identity continuations. make up for RTL's lack of boolean `registers'. An open-coder for MEMQ in predicate position might be helpful. -[] Make SF integrate more procedures as +[DONE] Make SF integrate more procedures as (access system-global-environment) Include anything from R4RS that we can improve. -[] Make the unsyntaxer hide all the `spurrious' accesses introduced -above. There should be a flag which when set, elides the access -provided that the would not be captured. +[DONE] Make the unsyntaxer hide all the `spurrious' accesses +introduced above. There should be a flag which when set, elides the +access provided that the would not be captured.