As much as I've complained about J in these forums I've been having a good time translating some simple code into J.  Someone gave me wise advice, to stick with explicit definitions until I know the language well, which advice I have cordially ignored because I'm having too much fun playing code golf with tacit tangles.

I was fascinated by J because it seemed to try to build on aspects of the human linguistic system.  Natural language unfolds in one dimension, time, so everything relevant to understanding a particular word in a sentence either came before it or is yet to come.  J seemed to emulate this by having verbs which relate directly only to objects on the immediate left and immediate right.  Moreover J seemed to be following a linguistic paradigm in have nouns which are inert, verbs that act on nouns, and adverbs which modify objects.  This seemed like a promising way to exploit humans' natural linguistic capabilities.

But maybe that's not way the J community currently sees J.  Do you love J most because of (pick only one)

1. the NL inspired syntax;

2. the suite of array utilities;

3. the concision of J code;

4. its being open-source; or

5. _____________________?

I've come to feel that all programming languages are ugly compromises that are about equally good/bad at solving practical problems, and the "best" language is just the one you know the best.  I used to be contemptuous of Perl, but after having learned it well enough for my purposes I now kind of enjoy the brain teaser quality of trying to fit problems into its procrustean bed (although I still think it's a silly language).  I have no doubt that I could live happily with J as my primary language, but only after an extended period of being handcuffed to it and forced to assimilate its quirks.  I don't know that I'll have the patience for that.

Is there any project in the J repos that demonstrates the strength of J, as opposed to just showing that it's at least as good as other languages?  Any project that would have been significantly harder to complete with say Python?  Does J have any killer advantage, even in just one aspect of programming?  Or does J just appeal to you the way pistachio ice-cream might, it just tickles your palate in a no-accounting-for-taste way?  That's how it appeals to me.

I was hoping someone could talk me into studying J seriously, but now it looks to me like a language which, with APL, has had enormous beneficial influence on many other languages, but which has failed to learn in its turn from them.  J seems a tad solipsistic.


----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to