blob: 1968af9ff4da9a71ad1fce618e830c4a7341b5b6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
CORE LANGUAGE FEATURES
CORE COMMANDS
- [onleave] command, executing something as soon as the current procedure
returns. With no arguments it returns the script set, with one appends
the onleave script. There should be a way to reset.
Currently we have [local] which can be used to delete procs on proc exit.
Also try/on/finally. Is [onleave] really needed?
OTHER COMMANDS NOT IN TCL BUT THAT SHOULD BE IN JIM
- Set commands: [lunion], [lintersect], and [ldifference]
EXTENSIONS
- OOP system
- Cryptography: hash functions, block ciphers, strim ciphers, PRNGs.
- Tuplespace extension (http://wiki.tcl.tk/3947) (using sqlite as backend)
- Zlib
- Gdlib
- CGI (interface compatible with ncgi, but possibly written in C for speed)
SPEED OPTIMIZATIONS
- Experiment with better ways to do literal sharing.
* Currently literal sharing is completely removed. Can it be made
efficient? What is the cost vs. benefit?
IMPLEMENTATION ISSUES
- Objects lazy free.
- Rewrite all the commands accepting a set of options to use Jim_GetEnum().
- Many have been done.
- Every time an extension is loaded Jim should put the dlopen() (or win32
equivalent) handle in a list inside the interpreter structure. When
the interpreter is freed all this handles should be closed with dlclose().
REFERENCES SYSTEM
- Unify ref/getref/setref/collect/finalize under an unique [ref] command.
|