Dan,

Thank you for these very useful tips that I do need to overcome my dyslexia. My other comments were meant to be more general. I do appreciate the comments you make about APL. I could read APL either left to right or right to left and also readily determine how it would be interpreted in the absence of an APL interpreter (for the most part). I do not have such fluency with J but I expect some J users do have such fluency so it is not inherent in J that this is somehow difficult.

Donna
[EMAIL PROTECTED]




On 25-Jan-07, at 6:34 PM, Dan Bron wrote:

Dydre:

It appears to me that most of your problems with J (viz APL) have to do with lexing. That is, taking a string of characters and turning them into J tokens.

First, if you haven't done so already, I suggest you change your default display form to "box", by selecting Edit>Configure>Display>Display Form and checking "box" .

You might also consider checking "Allow multiple selections" and selecting both "box" and "linear", so that you'll see the raw J followed by its lexed form. This may train you, in time, to parse raw J by eye.

Second, I suggest you configure your J environment to color different entities differently, to help you distinguish between them.

For example, you could color verbs and nouns differently, so that it would be immediately obivous that +.5 is +. 5 and not + .5 .

You could also color primitives differently from (user-defined) names. So that i:i doesn't look symmetric.

Coloring can even help you at the next level of J interpretation: parsing. That is, turning a list of tokens into a grammatical structure.

Just color adverbs and conjunctions differently from verbs. That would help you see that in 0 10 +/ i.5 the / is different from the + and i. and when you reach it, you have to do something "special" before continuing with the sentence.

You can play with your color scheme at Edit>Configure>Color . Be sure to press "add" look at the items you can independently color (e.g. primitives). You can even add your own.

-Dan

PS: APL did NOT process strictly from right to left; APL had operators too, and they had higher precedence than functions.

In fact, if I'm not mistaken, the APL2 standard (not some vendor's extension) even had the diamond operator, which had higher precedence even than operators. It was equivalent to a new line, which meant the thing to its left was executed before the thing to its right was even looked at.

----------------------------------------------------------------------
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