You're perfectly right, Tom. J documentation does have its blind-spots...

With my mathematician brain plugged-in, I'm contemptuous of mortals
who can't grasp the blinding obviousness of J in its ultra-consistent
totality, and its instantiation to any conceivable goal. ;-)

With my applied-psychology brain plugged-in, it's clear to me there's
a dearth of task-oriented documentation. It's nearly all
function-oriented. In other words, you have to know the function you
need in order to look it up.

That being so, people who've learned J successfully have done it by
reading the whole of the J Dictionary, on 2 tablets of stone
(Dic/Voc), making notes on the way. In other words, writing their own
task-oriented documentation. I still do that, in the few spare moments
I snatch from tussling with J to make it do what I want.

If you come from an APL background (APL and cousins, I mean: you
mentioned K and A+) then take a look at:
 http://www.jsoftware.com/jwiki/APL2JPhraseBook
It is precisely oriented to one particular task: find the J construct
to look up in order to perform the task that APL offers (say) {branch}
(→) to achieve. (As it happens, you'll find "return." there.)

If you come from a C background, then Henry Rich's "J for C
programmers" plugs a similar gap.

Another thing about the body of J literature is that it's mainly in
Tacit Code. So... no control structures. For good samples of Explicit
Code, you can't do better than explore the contents of the system
locales: _z_, _j_, _jijs_ . The J wiki describes two code browsers to
help you do exactly that. Plus the demos and labs, which will answer
nearly all your task-oriented questions without tears. J602 is better
at delivering the Labs than j701.

The other way is to carry on doing what you did: ask in the
programming forum (better than this one: the "general forum", which is
supposed to be for J installation questions.) We're very supportive,
because we all know it's the only real way to find out anything.

On Wed, Oct 17, 2012 at 4:06 PM, Tom Szczesny <[email protected]> wrote:
> Also (interestingly):
> 1) There is no entry for "return." in the index.
> 2) Until I got the your responses to my email, I could not find a
> relevant entry in
> forum search for "return"
>
> It might be just a further manifestation of my dyslexia, but I find it 
> somewhat
> difficult to find answers to specific questions in the J help documents.
>
> Anyway, thanks again for your quick response.
>
> On Wed, Oct 17, 2012 at 10:54 AM, Tom Szczesny <[email protected]> wrote:
>> Thanks.
>> I was looking for a monadic primitive verb,
>> but of course, in J, it is a control structure.
>> (It is not listed as one of the control structures in the Primer).
>>
>> On Wed, Oct 17, 2012 at 10:06 AM, Ian Clark <[email protected]> wrote:
>>> How about:
>>>   99 return.
>>>
>>> corresponds (roughly) to (APL):
>>>
>>> ∇z←a foo b
>>>  ...
>>>  →0,z←99
>>>  ...
>>>
>>>
>>> On Wed, Oct 17, 2012 at 2:11 PM,  <[email protected]> wrote:
>>>> In some APL-related languages there exists a nomadic verb for "early 
>>>> return" from a defined function.  In A+ this is "result" (nomadic left 
>>>> arrow).  In k this is nomadic colon.  Does a similar capability exist in J?
>>>>
>>>> Sent from my iPhone
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to