EDIT: Especially since Shen is now BSD licensed.
EDIT: Especially since Shen is now BSD licensed.
I am open to being proven wrong, though...
I'm not sure if these made it into ATS2 though.
Haskell also has very powerful metaprogramming facilities, like template haskell [1].
[0] http://scalamacros.org/ [1] https://wiki.haskell.org/Template_Haskell
You should check out the work being done on typed template Haskell then.
This link may be a start: https://groups.google.com/d/msg/qilang/mVSJIyp-OhM/FjcAOAWUi...
It's unfortunate that the original authors views on licensing takes so much discussion away from Shen itself as it's an interesting language.
I just started studying Java, and found the yet to be certified Java implementation. I am afraid to look at it, lest brains come of my nose.
Edit: I would say, if you want to practice on implementing a compiler & runtime (or VM with JIT or LLVM frontend etc) KL is a good place to start. It's so easy (again, to get something working; to optimise etc is obviously just as painful as with any other language implementation) that it is a lot of fun and you learn a lot if you never did it before.