Hi Alan,
Thanks again for your comments. I will respond to your other
set of comments in a later message. This is for the first one.
You said:
> "You don't like the current fork syntax"
That isn't what I said. It wouldn't be J without the fork syntax. Surely
I wouldn't have bothered stealing "{" and "}" for parentheses if I had
wanted to remove fork syntax.
My comments on the fork syntax - if I had been addressing it - would be:
1) There are circumstances where it isn't the best answer.
2) There are three disconnected and inconsistent environments -
interactive J, explicit J and fork syntax - and I would prefer to
have them integrated.
J appears complex not because it is complex, but because it has been
made complex.
You said:
> "so you are proposing a new
> one, using symbols that already have a well-established meaning in J
> scripts '{' and '}', which is a disruptive change for existing J
> experts."
What I am proposing is a syntax that I believe is based upon interactive
J, replaces explicit J and integrates better with fork syntax tacit J
I recognize the disruptiveness, which is why I keep emphasizing that I
am suggesting a separate environment that leaves existing J experts alone.
You said:
>> "Your reasons for using two-character symbols were, hmm, less than
>> compelling to me:
Fair enough
You said:
> "The association of '*' and '*:' to multiplication and '%' and '%:' to
> division are more useful to me than the non-association that occurs
> with character names. I like the feeling that occurs with '%:' and
> '*:', one of unification."
I am responding not to what bothers me today, but what bothered me when
I first came across J. That is a valid experience to use as a basis for
recommending change.
I did specifically note that no one would want to replace "*" and "%" -
or in fact any single character primitives. I also emphasized the
importance of making choice available.
I remember that it took me 15 minutes or less to change from being
very dubious about APL to being eager to enter the house. It was consistent
and elegant. I fully recognize the advantages of J and the difficulties in
working with a limited number of symbols. As I have noted before, if you
want potential buyers to come inside the house to see the wonderful
decoration, the outside of the house needs attention.
You said:
>> More generally, it appears that you are trying to solve a currently
>> intractable problem -- taking a concise, terse language, J, focused on
>> mathematics and analysis and replacing it with something slightly less
>> concise, slightly less terse, which you have been calling "S" and now,
>> "J2", for the purpose of "lowering the barrier to entry" (as marketing
>> folks say) and enabling more rapid comprehension of the language in
>> order to teach mathematics.
I think we are hung up on my suggestions for two character symbols.
That is the less important component of what I was suggesting. Actually,
my objective is to make J more terse. The alternatives to explicit J that I
suggested are more terse and I have yet to see any tacit J expression that
could not be made more terse by using a right-to left grammar where that is
more appropriate.
You said:
>> Learning how to build hooks, forks, and using atop, bond, under, dual,
>> and agenda can also be accomplished one lesson at a time. Practice
>> makes perfect! повторение матъ ученя!f
I know that I shouldn't talk about APL to J users, but we could get
people to use APL without any lessons at all.
Don
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm