Way back in 2008 Chris Burke drew attention to an article in Vector 23/1 by
Bernard Legrand, translated by Sylvia Camacho, entitled *APL – a Glimpse of
Heaven.*
This was first presented at a conference of 22 June 2006, organized by
AFAPL: *Association Francophone pour la promotion du langage APL.*
It was an unashamedly evangelistic appeal to the "diplodocus generation" of
C/C++ programmers to take APL seriously as a professional language.
In: http://code.jsoftware.com/wiki/Articles/APL_-_a_Glimpse_of_Heaven
Chris conjectured that the article would need only minor changes to offer J
in place of APL. He offered it as an "interesting exercise for the
beginner".

However the challenge was never taken up… until now.

Ladies and Gentlemen, it gives me great pleasure to present to the world:

   http://code.jsoftware.com/wiki/Articles/J_--_a_Glimpse_of_Heaven
by Bernard Legrand,
translated by Sylvia Camacho and done into J by yours-truly.

I have to say the exercise was not quite as easy as Chris made it out to
be. A little beyond the reach perhaps of even the most vainglorious J
beginner. Nevertheless it was an exercise worth doing.

Firstly I had to correct some of the code examples and their results: these
were occasionally garbled in the original article. The result is here:

   http://code.jsoftware.com/wiki/Articles/APL_--_a_Glimpse_of_Heaven

and I have to say it affords a better baseline than the Vector original for
comparing the two versions of Bernard Legrand's brilliant paper. Not only
because the code examples and their results now tally between the J and APL
papers, but also because they can profitably be read side-by-side in a
strictly compatible format.

In a recent posting: *[Jchat] How close is J to APL?*
Jane Dalley asked seven provoking questions, which included these:

1. How similar are both APL and J?
3. Can APL do everything J can do and visa versa?
6. Would one view J as a superset of APL?
7. Are J and APL more than niche languages?

I submit that Bernard Legrand's matching pair of papers offers the J novice
the best answers I've ever seen to these FAQs. Even if you know both
languages well, it is most instructive to see them compared in this manner.
And if you know neither language well, you may still find yourself
contemplating milestones in the emergence of Array Programming Languages
you never imagined you'd profit from knowing much about.

The power of Bernard's treatment rests more in what it doesn't say than in
what it does. He seems barely to scratch the surface of APL, let alone J –
yet that enables him to highlight the genuinely remarkable facets that J
and APL offer to the "diplodocus generation", facets so mundane for us
old-hands that we overlook their crying need for careful explanation.

Practically the only aspect that J-ers will baulk at is Bernard's plaintive
enthusiasm for APL symbols. But after nearly 60 years, is that a topic on
which anything is left unsaid?

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

Reply via email to