Henry wrote:
> Not a bug: when x/y are absent the body of the modifier
> (which may be long) is executed as soon as it has its verb arguments.
I'll think more about your response, but my knee-jerk reaction is: your facts
are correct, but your conclusion not.
Yes, it must be parsed immediately. But why does that prevent
+ 1 : 0
u~/@|.@([EMAIL PROTECTED]@]`0:`]}~)
:
u~/@|.@((u {.)`0:`]})
)
from returning
+~/@|.@([EMAIL PROTECTED]@]`0:`]}~) :(+~/@|.@((+ {.)`0:`]}))
immediately?
The nameclasses of all of the primitives in the explicit adverb are known. That
includes u .
Given that, Section E fully specifies what the result of each sentence will be.
The definition of : specifies that the first
sentence defines the monad, and the second the dyad. But the second sentence
is dropped; the dyadic definition ignored.
That is a bug.
This thread started a train of thought in me. I was originally going to post
it to the Forum, but it became too long winded (and
probably irrelevant to most subscribers). I pasted the email up on the Wiki:
http://www.jsoftware.com/jwiki/DanBron/Temp/Parser_Bugs_and_Proposed_Resolution
The ideas haven't gelled, and the page isn't wikified yet, but I solicit input
on the ideas presented anyway.
-Dan
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm