On 9/20/07, neville holmes <[EMAIL PROTECTED]> wrote:
> Well, yes, it could be done that way, but surely {.[.}. is
> significantly simpler and easier to understand than
> /(@({. ,: }.)) especially for learners and dabblers.
If I understood [. I might be able to answer this question, but
before I could be confident that I understood, I would need to
understand how it works in a large set of circumstances.
For example:
What would [.[.[. mean?
What would +({.[.}.) mean?
What would +(NAME=: {.[.}) mean?
What would +(NAME) mean, after executing the above line?
What would ({.[.})+({.[.}.) mean?
> But, because they would coerce a tacit definition to be either
> a conjunction or an adverb, depending on whether ]. was used
> or not, and because they mimic and conform to [ and ],
> they could in effect be used to define a "conjunction" that is a
> verb/function with four arguments or a formidable conjunction
> with four operands, for example. And it would do so simply.
> Or at least it seems so to me.
In essence, that's what a conjunction has always been in J,
though you are correct that currently only explicit definitions
expose this mechanism to the J programmer. Tacit conjunctions
are radically simplified -- in essence, they are limited to only a
few simple useful cases, to avoid confusing the student.
> As a dilettante tacit-only J-er I am very discouraged that this
> has not been done.
I think that's because no one understands how to make it work
without making things harder to understand.
Here's another question case for you:
What would this mean:
example=: [. ,
0 example
?
--
Raul
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm