source: project/chicken/branches/hygienic/TODO @ 11941

Last change on this file since 11941 was 11941, checked in by felix winkelmann, 13 years ago

improved installation order for repeated occurrences in dependency chains

File size: 2.8 KB
Line 
1TODO for macro/module system                                    -*- Outline -*-
2
3* what about thread-terminate! ? (at least note in manual)
4
5* trunk merge
6  11635 was last
7
8* macros
9** at some stage disable debug-output in expand.scm
10
11* bugs
12** compiler
13*** pre-optimization
14**** changes call-sites and makes them invalid for later pre-optimization
15** macros
16*** expansion of r5rs_pitfall 4.2 incorrect
17    possibly due to a non-aliased implicit "begin" somewhere
18*** dirty-macros.scm loops when using `defile'
19    possibly due to unrenamed special forms
20** modules
21*** chicken.import.scm refers to ##sys#chicken-macro-environment
22    ... which is only set, if chicken-more-macros.scm is loaded, which
23    is of course not the case inside a compiled executable (current
24    workaround is to set them to nil by default)
25*** same for ##sys#chicken-ffi-macro-environment
26*** re-exports of syntax doesn't work
27    generating import library requires source
28    (compiled-module-registration), but original module is lost after
29    importing.
30*** `require-extension' fails in interpreter when extension is .so without import library
31    probably because load and import is in same toplevel form, and the
32    load is performed after the import (at runtime). A possibly fix
33    would be to load the extension immediately (at
34    compile-/expansion-time), when import is #t and o import lib
35    exists.
36
37* tests
38** optional longer run (env. var)
39*** syntax-rules-stress-test
40*** fully compiled ec-tests
41
42* module issues
43** code-duplication in compiler and evaluator for ##core#module
44** "scheme" module does not include some special forms ("define-syntax", etc.)
45** import-for-syntax imports value bindings into import-env
46   should actually be a distinct meta-import-env.
47   (does it work at all?)
48** curried define performs expansion in empty se - problem?
49   (as comment in expand.scm indicated (##sys#register-export))
50
51* setup/install
52** setup-download
53*** HTTP_PROXY
54*** handle redirects in http-fetch
55*** connect timeout and alternative download location
56*** only download tests on demand (-test option)
57** chicken-install
58*** handle needs/depends of builtin extension
59*** should cache extension-info
60    necessary?
61** henrietta
62*** parameter "withtests=BOOL" controls whether tests should be downloaded
63
64* documentation
65** document ("HI/LO") expander (-> wiki, internals)
66** document new .meta entries
67   depends, test-depends
68
69* build
70** chicken.texi needs to be regenerated
71
72* syntax-error
73** if ##sys#current-module is set, add name to error message?
74** fluidly keep track of expanded forms (extend meaning of culprit)
75   to pprint pruned expr on error
76
77* modules
78** checks
79*** reimport of imported id
80*** unused defs?
81
82* eggs
83** numbers
84   segfaults - something wrong with finalization, may be related to
85   warning on compilation
86   (might be fixed with force-finalizers not imported - test with optimizations on)
Note: See TracBrowser for help on using the repository browser.