kuc 0.0-20110224

$ curl kuc-0.0-20110224.tar.gz | tar xzf -
$ cd kuc-*; make
$ ./kuc
kuc> {a:!x;.{a+1}} 5                    # closures
kuc> {b:a:!x;.{a+:1;b::|b};(a;b)} 5     # closures!
kuc> o:.{a:0;`add`show!{a+:x},{show a}} # objects
kuc> (o`add) 5; (o`add) 7; .o`show

(Yay for garbage collection!)

kuc> ackermann:{$[x;self[x-1;$[y;self[x;y-1];1]];y+1]}
kuc> time {ackermann[3;9]}
kuc> disasm ackermann # tail-call-to-self optimization
kuc> time {-1+|/(#{@[x;!*|x;|:]}\)'1+!-7} # fannkuch

(Yay for threaded JIT!)

kuc> {[x]{[y]y-x}}[3;5] # curried functions
kuc> _17%5     # compound operators (cf (_:)17%5)
kuc> ~^108810b # null bool
kuc> write[`:/dev/stdout]"Hello, world!\n";

(Yay for incompatibility!)

_