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

Last change on this file since 11401 was 11401, checked in by felix winkelmann, 12 years ago

working mini-setup; csi describe and report tweaks; wrong handling of require-extension with core libs (import case)

File size: 1.8 KB
Line 
1TODO for macro/module system                                    -*- Outline -*-
2
3* trunk merge
4  11148 was last
5
6* bugs
7
8** macros
9*** expansion of r5rs_pitfall 4.2 incorrect
10    possibly due to a non-aliased implicit "begin" somewhere
11
12** modules
13*** chicken.import.scm refers to ##sys#chicken-macro-environment
14    ... which is only set, if chicken-more-macros.scm is loaded, which is
15    of course not the case inside a compiled executable
16    (current workaround is to set them to nil by default)
17*** same for ##sys#chicken-ffi-macro-environment
18*** re-exports of syntax doesn't work
19    generating import library requires source
20    (compiled-module-registration), but original module is lost after
21    importing
22*** `require-extension' fails in interpreter when extension is so without import library
23    probably because load and import is in same toplevel form, and the load is performed
24    after the import (at runtime)
25
26* module issues
27** code-duplication in compiler and evaluator for ##core#module
28** "scheme" module does not include some special forms ("define-syntax", etc.)
29** import-for-syntax imports value bindings into import-env
30   should actually be a distinct meta-import-env.
31*** does it work at all?
32** curried define performs expansion in empty se - problem?
33   (as comment in expand.scm indicated (##sys#register-export))
34
35* documentation
36** document ("HI/LO") expander (-> wiki, internals)
37
38* build
39** chicken.texi needs to be regenerated
40
41* syntax-error
42** if ##sys#current-module is set, add name to error message?
43
44* modules
45** checks
46*** reimport of imported id
47*** unused defs?
48
49* compiler
50** warn if encountering global ref to "unquote[-splicing]"
51
52* eggs to be removed
53** syntax-case
54*** sxml-match, others ...
55** codewalk
56*** modules, crunch
57** syntactic-closures
58** simple-macros
59** alexpander
Note: See TracBrowser for help on using the repository browser.