Def === The 'def' is where colm realy shines. A 'def' is somewhere between a struct and a regular expression. Again one example is much more clearer. [source,chapel] .assign.lm ---- include::code/assign.lm[] ---- After the compilation we can pipe some input to it's stdin. [source,bash] ---- /opt/colm/bin/colm assign.lm echo -e 'b=3;a=1;\n c=2;' |./assign ---- This gives us: ---- b->3 a->1 c->2 ---- NOTE: this also illustrates how to read from 'stdin'.