2 - rename stepA_interop to stepA_mal
3 - test to check args set properly
4 - test to make sure slurp captures final newline
5 - make sure errors propagate/print properly when self-hosted
7 - change perf test to run for 10 seconds and then calculate number
8 of iterations per second
9 - redefine (defmacro!) as (def! (macro*))
10 - runtest expect fixes:
11 - stop using expect, so we can drop --raw option
12 - fix long lines in runtext/expect
13 - regular expression matching in runtest
14 - add re (use in rep) everywhere and use that (to avoid printing)
15 - Implement/fix interop
16 - Print full exception when test gets EOF from expect
19 - metadata as a map only. ^ merges metadata in the reader itself.
20 Line numbers in metadata from reader.
22 - https://github.com/pixie-lang/pixie
23 - http://www.toccata.io/2015/01/Mapping/
25 - environments first class: *ENV*, *outer* defined by env-new
26 - namespaces is *namespaces* map in environment which maps namespace
27 names to other environments.
28 - def! become an alias for (env-set! *ENV* 'sym value)
29 - Namespace lookup: go up the environment hierarchy until
30 a *namespaces* map is found with the namespace name being
31 looked up. Then the symbol would be looked up starting in
32 the namespace environment. Need protocols first probably.
33 - Break out impl eval into step0.5
34 - Fix quasiquoting of vectors
36 - Get self-host working at earlier step:
38 - Remove macros from mal
40 - multi-line REPL read
42 - gensym reader inside quasiquote
44 - per impl tests for step5_tco
46 ---------------------------------------------
49 - explore using ${!prefix*} syntax (more like make impl)
53 - come up with better way to do 20 vararg code
54 - GC: use http://www.hboehm.info/gc/
55 - fix mal/clojurewest2014.mal
58 - fix command line arg processing (doesn't run file specified)
59 - accumulates line breaks with mal/clojurewest2014.mal
62 - make indent consistent across steps (e.g. step5, step8)
63 - fix mal/clojurewest2014.mal
66 - make target to compile to JS
67 - fix "user> " prompt with mal/clojurewest2014.mal
70 - consider variable arguments in places where it makes sense
71 https://gobyexample.com/variadic-functions
74 - TCO using seq/bang patterns:
75 http://stackoverflow.com/questions/9149183/tail-optimization-guarantee-loop-encoding-in-haskell
76 - immediately exits mal/clojurewest2014.mal
79 - Use gradle instead of mvn
80 http://blog.paralleluniverse.co/2014/05/01/modern-java/
81 - MAL formatting is a bit off with mal/clojurewest2014.mal
84 - interop: callbacks using Mal functions
85 - fix "user> " prompt with mal/clojurewest2014.mal
88 - time-ms should get actual milliseconds
91 - allow '_' in make variable names
92 - hash-map with space in key string
93 - Fix: make -f stepA_interop.mk ../mal/step6_file.mal
94 (slurp "../tests/incA.mal")
95 (read-string "(+ 2 3)")
96 - errors should propagate up from within load-file
97 - GC: expore using "undefined" directive in Make 3.82
100 - line numbers in errors
104 - fix metadata on native functions
108 - formatting messed up with mal/clojurewest2014.mal
111 - add negative numbers
112 - fix blank line after comments
113 - fix command line arg processing (doesn't run file specified)
114 - formatting messed up with mal/clojurewest2014.mal
117 - error: python ../python/stepA_interop.py ../mal/stepA_interop.mal ../mal/stepA_interop.mal
121 - tracebacks in errors
122 - fix running from different directory
123 - formatting messed up with mal/clojurewest2014.mal
126 - metadata on collections
131 - use built-in regex once fixed:
132 https://github.com/rust-lang/rust/issues/18034
133 https://github.com/rust-lang/rust/issues/18035
134 - fix 'make all' invocation of cargo build
135 - formatting messed up with mal/clojurewest2014.mal
139 - fix exception when finished running something on command line
142 - convert readline.cs to readline.vb
145 ---------------------------------------------
148 Future Implementations:
151 - http://rosettacode.org/wiki/Regular_expressions#Ada
156 - http://groovy-lang.org/learn.html
157 - http://groovy-lang.org/structure.html
164 - http://api.haxe.org/
165 - http://haxe.us/haxe_tutorial.html
170 sudo aptitude install fp-compiler-2.6.2
173 - https://github.com/tpope/timl
178 - Basic interpreter in TeX: http://ctanhg.scharrer-online.de/pkg/basix.html
179 - Cheat Sheet: http://www.stdout.org/~winston/latex/latexsheet.pd
180 - latex '\nonstopmode\input' blah.tex