-
Notifications
You must be signed in to change notification settings - Fork 0
/
ToDo
42 lines (37 loc) · 1.14 KB
/
ToDo
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
g -i 'todo' `{find . -name '*.java'}
g -i 'fixme' `{find . -name '*.java'}
g -i 'next:' `{find . -name '*.java'}
g -i 'xxx' `{find . -name '*.java'}
Immutable data (e.g. quoted data) - nice but not necessary
Proper line numbers
Make middle neater by using macro matching
More efficient macro matching (regular expression simple and fast) --- Measure performance to see if we need this
Sort out nil vs null discrepancy
Have the bind() call of the reflective environment be something that is called after the environment is initialised, this way when main classes become environments for libraries, we have regularity
eval tail call---can we test this? ((lambda (x) (eval `(,x ',x))) '(lambda (x) (eval `(,x ',x))))
Java call order, e.g. CLOS is left to right for specialisation
make CallStack not static, for multithreading
own stack: catch exceptions (e.g. ClassCastException)
dynamic wind and exceptions
For the benchmarks:
fib:
let*
read
number->string
string-append
=
call-with-values
vector
vector-ref
<
/
round
display
write
newline
flush-output-port
jiffies-per-second
current-second
current-jiffy
inexact
recursive syntax definitions in scheme/deriv