The virtues of APL are that it is a complete replacement for conventional mathematical and logical notations (in their algorithmic roles) and that it is superior to those notations in the following respects:
Unambiguous Concise Consistent
Rich Many uses Easily written and read
Low threshold Many learning paths High ceiling
How does J compare? This issue of Vector is on the theme of J; that alone needs justification when some of our members wish Vector contained less J (see the report on the reader survey). There is a feast here for those who can see more to APL and J than earning their daily bread. The virtues of J are certainly worth a moment’s thought.
J is as unambiguous as APL; it is more concise, more consistent, richer, has more uses, is arguably easier to read and write as it has no special symbols, also has a low beginners’ threshold – arguably not quite so low – has many learning paths, has at least as high a ceiling. In J all the parts of speech are definable by the user, which makes it much more concise. Although many symbols of APL are rendered with two characters in J, this loss of brevity is more than made up by the extra power of each expression and the tacit form of programming. J has a more consistent syntax than any version of APL; it is amazingly simple and the only distinctions are between parts of speech. A part of speech you define ranks in every way the equal of a primitive. J is richer and has more uses. The richness is obvious to a reader of the Dictionary of J especially if he holds the Dictionary of APL in the other hand. It would be a surprise if the extra richness didn’t lead to more uses, but on the other hand, APL could be used for everything and what other uses are there?
The problems with J are with the learning curve and the upward path. It is not that there is any obvious reason why J ought to be harder than APL but many of us have found it so. There is not as wide a choice with J learning materials as with APL, though Vector does its bit to increase the variety, and some of the material there is is tough. Professor Donald McIntyre deserved the SigAPL Outstanding Achievement Award just for demonstrating that even a complete APL diehard (which he was, you know) can learn J and get to love it. Donald has provided the best way available to learn J in his many tutorials and articles. There is a splendid example for you inside.
(webpage generated: 6 December 2006, 12:11)