4 ms·
J's notation is a bit problematic for anything that has completely separate phases for translation and execution. An identifier may stand for a noun (array), ve
by kd0amg 12y ago
J's notation is a bit problematic for anything that has completely separate phases for translation and execution. An identifier may stand for a noun (array), verb (first-order function), adverb (unary second-order function), or conjunction (binary second-order function). Which one it stands for affects how the line containing it should be parsed but is not really known until run time. Historically, implementations of APL family languages have generally gone back and forth between reading a line, executing it, reading another line, etc.
- beagle3 12y agoTrue, but K doesn't have this problem - the parsing is entirely lexical, like Lisp (and unlike J, C and C++)