The discussion is moving toward the polemic and unhelpful. I write to
try to suppress suggestions that have no hope of being implemented soon.
1. Reducing parentheses is not a laudable goal; in fact, I see it as the
opposite. The train A A C should, if possible, mean something different
from (A A) C because Why have two ways to say the same thing? We are
trying to define a grammar with NO reserved words except parentheses;
perhaps only Ken could have attempted it; there are just a handful of
productions to define; they should be as powerful as possible, with as
little duplication as possible.
2. I found the production (A C)->((x A) C x) useful enough in my work
that I gave it a name, the adverbial hook.
3. (C C) -> ((u C v) C) is a drastic change to the language. It consumes
two words and creates something that consumes one or two more words. Is
it brilliant? Is it the camel's nose in the tent? I personally think
it raises a stench to the nostrils of the Almighty. I could be wrong.
But anyone suggesting such a fundamental change must arrive first with
SHORT EXAMPLES showing why the language should consider such forms,
which will be so unfamiliar to the J programmer. If the knowledgeable J
community is convinced, we can consider whether the forms should be
implemented.
A couple of users (including me) suggested (C0 C1)->((u C0 v) (u C1
v)). Why? Because it allows
* easy production of hooks, with V ([. ].) V
* execution of verbs, with V ([. ].) N-phrase
That's a pretty good argument, SUPPORTED BY EXAMPLE. Hooks are important.
I am very reluctant to make changes that don't have demonstrated
benefits, being a disciple of Omar:
O take the cash in hand and waive the rest;
Ah, the brave music of a /distant/ drum!
Henry Rich
On 10/4/2021 4:33 PM, 'Pascal Jasmin' via Programming wrote:
That said, this was also a syntax error when we did not have
conjunction trains. So I am not sure why it should be an important
issue now.
if you stick to old permissible AA...A trains then you don't need to "over"
bracket (AA..A)
for CAA..A you also don't need to bracket (for practical purposes)
for AA..ACA, you do need to over bracket the left part.
There are new powers that allow including unbound Cs inside adverb trains.
That is awesome!!! The disadvantage of imposing tedium on these new powers is
greater than the advantage of not double typing out u in uCu, in my opinion.
On Monday, October 4, 2021, 04:20:13 p.m. EDT, Raul Miller
<[email protected]> wrote:
Hmm...
Conceptually speaking, the A A C A syntax error could be eliminated
without the addition of any new parsing rules, if A A C would
translate to two parse elements (combining the two adverbs and putting
the C back as-is).
That said, this was also a syntax error when we did not have
conjunction trains. So I am not sure why it should be an important
issue now.
I also don't know if there are other implications. I haven't thought
about it that much.
Are you aware of other important cases?
Thanks,
--
This email has been checked for viruses by AVG.
https://www.avg.com
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm