-
Notifications
You must be signed in to change notification settings - Fork 2
/
bugs.
40 lines (27 loc) · 1.44 KB
/
bugs.
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
Complex numbers are not implemented.
When doing file-position, and maybe clrbfo and clrbfi, maybe
we should clear lookahead and other status.
Fix GRINDEF of macros to reproduce the DEFMACRO format,
instead of using the undocumented MACRO format. Prints out DEFMACRO
has function type but the body is still the internal macro format.
Fix ` to produce a macro instead of expanding at read time.
That way GRINDEF can print them properly.
It should be possible to continue after a break initiated by ^B.
At the moment one can restart as of the most recent interpreted
call, but no better, since we can't do interrupt handling in Lisp.
INSPECT is not really implemented.
RANDOM don't seem very hot: There seems to be too many repeated values.
Maybe this is word-size dependent or something.
Use | | instead of slashification in printing atom names. Printing of
|..| and || doesn't work. When *print-base* is 16, A should be
slashified.
Missing &environment option for defmacro
Macros that expand to declarations may not work in all contexts.
Those that take an &environment argument will not work at all.
In Arith, function that could benefit from handcoding:
dramatic benefit: floor, ceiling, round, mod, logcount
some benefit: rem, ffloor, fceiling, ftruncate, fround
Compiler can't handle closures. Programs will work, but functions
requiring closures will be interpreted.
LABELS doesn't compile (ie, signals an error) if it needs to generate
a closure.