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