2014-03-25 01:32:24 +04:00
|
|
|
All:
|
2015-02-28 19:35:04 +03:00
|
|
|
- Finish guide.md
|
|
|
|
|
2015-03-15 01:14:32 +03:00
|
|
|
- test that *ARGV* gets set properly
|
2015-01-09 08:25:40 +03:00
|
|
|
- test to make sure slurp captures final newline
|
2015-03-15 01:14:32 +03:00
|
|
|
- Give runtest knowledge of optional tests and report as non-fatal
|
2015-01-09 08:25:40 +03:00
|
|
|
- regular expression matching in runtest
|
2015-01-03 08:33:50 +03:00
|
|
|
- add re (use in rep) everywhere and use that (to avoid printing)
|
2015-03-12 06:08:21 +03:00
|
|
|
- per impl tests for step5_tco, or at least a better way of
|
|
|
|
enabling/disabling/tweaking per implementation
|
2015-03-15 01:14:32 +03:00
|
|
|
- fix stepA failures: lua matlab miniMAL perl racket
|
2014-03-31 01:39:44 +04:00
|
|
|
|
2015-03-12 06:08:21 +03:00
|
|
|
Other ideas for All:
|
|
|
|
- propagate/print errors when self-hosted
|
|
|
|
- redefine (defmacro!) as (def! (macro*))
|
|
|
|
- Fix/implement interop in more implementations
|
|
|
|
|
|
|
|
- metadata on symbols (as per Clojure)
|
2015-01-30 22:21:10 +03:00
|
|
|
- metadata as a map only. ^ merges metadata in the reader itself.
|
|
|
|
Line numbers in metadata from reader.
|
2015-01-03 08:33:50 +03:00
|
|
|
- protocols!
|
|
|
|
- https://github.com/pixie-lang/pixie
|
2015-01-09 08:25:40 +03:00
|
|
|
- http://www.toccata.io/2015/01/Mapping/
|
2015-01-30 22:21:10 +03:00
|
|
|
- namespaces
|
|
|
|
- environments first class: *ENV*, *outer* defined by env-new
|
|
|
|
- namespaces is *namespaces* map in environment which maps namespace
|
|
|
|
names to other environments.
|
|
|
|
- def! become an alias for (env-set! *ENV* 'sym value)
|
|
|
|
- Namespace lookup: go up the environment hierarchy until
|
|
|
|
a *namespaces* map is found with the namespace name being
|
|
|
|
looked up. Then the symbol would be looked up starting in
|
|
|
|
the namespace environment. Need protocols first probably.
|
2014-04-18 06:49:07 +04:00
|
|
|
- Fix quasiquoting of vectors
|
2014-03-30 00:17:00 +04:00
|
|
|
|
2014-12-19 05:33:49 +03:00
|
|
|
- multi-line REPL read
|
|
|
|
- loop/recur ?
|
|
|
|
- gensym reader inside quasiquote
|
|
|
|
|
2014-10-10 08:48:47 +04:00
|
|
|
|
2014-03-25 01:32:24 +04:00
|
|
|
---------------------------------------------
|
|
|
|
|
2014-04-07 02:35:18 +04:00
|
|
|
Bash:
|
2014-04-18 07:23:07 +04:00
|
|
|
- explore using ${!prefix*} syntax (more like make impl)
|
2014-04-24 06:59:50 +04:00
|
|
|
- GC
|
2014-03-25 01:32:24 +04:00
|
|
|
|
|
|
|
C:
|
|
|
|
- come up with better way to do 20 vararg code
|
2015-01-30 22:21:10 +03:00
|
|
|
- GC: use http://www.hboehm.info/gc/
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix mal/clojurewest2014.mal
|
2014-03-25 01:32:24 +04:00
|
|
|
|
2014-04-07 04:23:28 +04:00
|
|
|
C#:
|
2015-01-03 08:33:50 +03:00
|
|
|
- fix command line arg processing (doesn't run file specified)
|
2015-01-09 08:25:40 +03:00
|
|
|
- accumulates line breaks with mal/clojurewest2014.mal
|
2015-02-28 19:35:04 +03:00
|
|
|
- step9_interop:
|
|
|
|
http://www.ckode.dk/programming/eval-in-c-yes-its-possible/
|
2014-04-07 04:23:28 +04:00
|
|
|
|
2014-04-07 02:35:18 +04:00
|
|
|
Clojure:
|
2015-01-03 08:33:50 +03:00
|
|
|
- make indent consistent across steps (e.g. step5, step8)
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix mal/clojurewest2014.mal
|
2014-03-25 01:32:24 +04:00
|
|
|
|
2014-12-19 05:33:49 +03:00
|
|
|
CoffeeScript:
|
|
|
|
- make target to compile to JS
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix "user> " prompt with mal/clojurewest2014.mal
|
2014-12-19 05:33:49 +03:00
|
|
|
|
2014-10-07 05:36:23 +04:00
|
|
|
Go:
|
|
|
|
- consider variable arguments in places where it makes sense
|
|
|
|
https://gobyexample.com/variadic-functions
|
|
|
|
|
2014-12-24 06:35:48 +03:00
|
|
|
Haskell:
|
2015-01-03 08:33:50 +03:00
|
|
|
- TCO using seq/bang patterns:
|
|
|
|
http://stackoverflow.com/questions/9149183/tail-optimization-guarantee-loop-encoding-in-haskell
|
2015-01-09 08:25:40 +03:00
|
|
|
- immediately exits mal/clojurewest2014.mal
|
2014-12-24 06:35:48 +03:00
|
|
|
|
2014-04-07 02:35:18 +04:00
|
|
|
Java:
|
2014-05-11 01:58:23 +04:00
|
|
|
- Use gradle instead of mvn
|
|
|
|
http://blog.paralleluniverse.co/2014/05/01/modern-java/
|
2015-01-09 08:25:40 +03:00
|
|
|
- MAL formatting is a bit off with mal/clojurewest2014.mal
|
2014-04-07 02:35:18 +04:00
|
|
|
|
|
|
|
Javascript:
|
2015-03-03 02:36:09 +03:00
|
|
|
- interop: adopt techniques from miniMAL
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix "user> " prompt with mal/clojurewest2014.mal
|
|
|
|
|
|
|
|
Lua:
|
|
|
|
- time-ms should get actual milliseconds
|
2014-03-25 01:32:24 +04:00
|
|
|
|
|
|
|
Make:
|
|
|
|
- allow '_' in make variable names
|
2015-01-07 06:03:04 +03:00
|
|
|
- hash-map with space in key string
|
2015-02-28 20:09:54 +03:00
|
|
|
- Fix: make -f stepA_mal.mk ../mal/step6_file.mal
|
2014-12-19 05:33:49 +03:00
|
|
|
(slurp "../tests/incA.mal")
|
|
|
|
(read-string "(+ 2 3)")
|
2014-03-25 01:32:24 +04:00
|
|
|
- errors should propagate up from within load-file
|
2015-01-09 08:25:40 +03:00
|
|
|
- GC: expore using "undefined" directive in Make 3.82
|
2014-03-25 01:32:24 +04:00
|
|
|
|
|
|
|
Mal:
|
|
|
|
- line numbers in errors
|
2014-03-30 00:17:00 +04:00
|
|
|
- step5_tco
|
2014-03-25 01:32:24 +04:00
|
|
|
|
2015-02-12 07:31:39 +03:00
|
|
|
miniMAL:
|
|
|
|
- figure out why {} literals are "static"/persistent
|
|
|
|
|
2014-04-20 00:12:13 +04:00
|
|
|
Perl:
|
2014-05-11 01:58:23 +04:00
|
|
|
- fix metadata on native functions
|
2014-12-19 05:33:49 +03:00
|
|
|
- implement conj
|
2014-04-20 00:12:13 +04:00
|
|
|
|
2014-04-07 02:35:18 +04:00
|
|
|
PHP:
|
2015-01-09 08:25:40 +03:00
|
|
|
- formatting messed up with mal/clojurewest2014.mal
|
2014-03-30 00:17:00 +04:00
|
|
|
|
|
|
|
Postscript:
|
2014-05-11 01:58:23 +04:00
|
|
|
- add negative numbers
|
2015-01-03 08:33:50 +03:00
|
|
|
- fix blank line after comments
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix command line arg processing (doesn't run file specified)
|
|
|
|
- formatting messed up with mal/clojurewest2014.mal
|
2014-04-07 02:35:18 +04:00
|
|
|
|
|
|
|
Python:
|
2015-02-28 20:09:54 +03:00
|
|
|
- error: python ../python/stepA_mal.py ../mal/stepA_mal.mal ../mal/stepA_mal.mal
|
2014-10-10 08:48:47 +04:00
|
|
|
- interop tests
|
2014-04-07 02:35:18 +04:00
|
|
|
|
2014-11-04 08:50:55 +03:00
|
|
|
R:
|
|
|
|
- tracebacks in errors
|
2015-01-03 08:33:50 +03:00
|
|
|
- fix running from different directory
|
2015-01-09 08:25:40 +03:00
|
|
|
- formatting messed up with mal/clojurewest2014.mal
|
|
|
|
|
|
|
|
Racket
|
|
|
|
- metadata on collections
|
2014-11-04 08:50:55 +03:00
|
|
|
|
2014-04-14 00:36:02 +04:00
|
|
|
Ruby:
|
|
|
|
|
2014-12-19 05:33:49 +03:00
|
|
|
Rust:
|
2015-01-03 08:33:50 +03:00
|
|
|
- use built-in regex once fixed:
|
|
|
|
https://github.com/rust-lang/rust/issues/18034
|
|
|
|
https://github.com/rust-lang/rust/issues/18035
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix 'make all' invocation of cargo build
|
|
|
|
- formatting messed up with mal/clojurewest2014.mal
|
2015-01-03 08:33:50 +03:00
|
|
|
|
|
|
|
Scala
|
|
|
|
- readline
|
2015-01-09 08:25:40 +03:00
|
|
|
- fix exception when finished running something on command line
|
2015-01-03 08:33:50 +03:00
|
|
|
|
|
|
|
VB.Net
|
|
|
|
- convert readline.cs to readline.vb
|
|
|
|
|
|
|
|
|