Commit | Line | Data |
---|---|---|
a35cabe8 JB |
1 | * Add facilities for debugging Scheme programs. |
2 | ||
f6e372ed JB |
3 | The low-level debugging support is done, and we are now working on the |
4 | user interface. | |
d345f2b2 JB |
5 | |
6 | * Documentation. | |
7 | ||
f6e372ed JB |
8 | We have a new layout for the reference manual which covers the |
9 | C/Scheme interface, as well as the scheme variants. We also want a | |
10 | more thorough tutorial manual, but we haven't sketched that out yet. | |
151e0ee5 JB |
11 | |
12 | ||
a35cabe8 JB |
13 | Desired later on |
14 | ||
57d09442 | 15 | * Good interface to Tk |
d345f2b2 | 16 | |
a35cabe8 JB |
17 | * Add a convenient facility for running a pipeline of processes |
18 | with redirections. Gary Houston <ghouston@actrix.gen.nz> | |
19 | is working on this. | |
20 | ||
21 | * Make it possible to link Guile and TK without using libtcl.a, by | |
22 | providing Guile-based replacements for the libtcl.a functions that TK | |
23 | requires. | |
24 | ||
25 | * Make ordinary lambda functions work as callbacks for Tk; | |
26 | eliminate the need for tcl-lambda. | |
27 | ||
28 | * Translators for additional languages; in particular, Perl, Python, | |
29 | TCL, Emacs Lisp, and Rexx. | |
30 | ||
a35cabe8 | 31 | * A package for time conversions and formatting. |
973e9b36 JB |
32 | |
33 | * Make GDB work with Guile | |
34 | ||
35 | This would permit programmable debugging and a nice integrated GUI. | |
82cc1b11 MD |
36 | |
37 | ||
38 | Low-level things | |
39 | ||
40 | * Use the SCM trick of tagging environments with immediates (see m_letrec1) | |
41 | to convert source correctly in unmemocopy. | |
c5b738b5 MD |
42 | |
43 | ||
44 | Optimizations | |
45 | ||
46 | * Eliminate argument checking for closures. One way to do it is to | |
47 | set the cdr of application forms to an immediate representing the | |
48 | arity of the call. If the closure contains a corresponding | |
49 | immediate, these can be matched against eachother. | |
50 | ||
51 | * Implement a thread-safe alternative to SCM's environment caches: | |
52 | ||
53 | Add an extra argument to SCM_CEVAL: "evaluation context". | |
54 | Evaluation contexts contain a stack of locations. |