@ktye hmm yeh I forgot how much of a pain it was to be able to chat here, especially when you're not already part of the stackoverflow/stackexchange world
I mean if there are going to be multiple K's out there, let alone variants of APLs/Js/others, surely having three-to-four different discussion places is par for the course =P
The closest thing K has to macros is that for some dialects you can easily obtain a K-parse tree from a string (and vice versa) as well as execute a parse tree. Since parse trees are ordinary K data, you can fold, spindle, and mutilate them as desired.
but in general, macros are mechanisms of abstraction and detail-hiding. APL-family languages eschew obfuscatory abstraction, and aim to provide a toolkit of language features that can be brought to bear directly on a wide range of problems
2
I find it a very amusing historical note that K syntax is extremely similar to M-expressions, the syntax Lisp was intended to have before the implementors gave up and chose to write thousands of parens instead
so perhaps it's best to just think of K as lisp, except properly finished