I agree with R.E. Boss that the language is crippled, not improved, by
avoiding composing conjunctions.

On Wed, Nov 30, 2011 at 2:37 AM, R.E. Boss <r.e.b...@planet.nl> wrote:

>
>
> IMO the role of @ is essential and by removing it you amputate J.

...
>

 What stands out to me as the greatest loss is that a very common phrasing
decision is eliminated. I think of this as the "inside, outside" decision,
and it's about where to write a monadic verb that takes the result of a
fork. It can be put outside the fork using [:

[: h f g e

or it can appear inside the fork using @: (or another compositional
conjunction)

f h@:g e

There are situations where "h" and "g" are more readily thought of
together. In those situatons, using a composition in the center tine is a
boon. There are other times where "h" seems nicer posed against the train
as a whole, so Cap works well. There are no simple rules for resolving
these differences, and they're mainly aesthetic.

Programmers who learn tacit form will be up against this pattern sooner or
later. I can't imagine anybody becoming even modestly fluent without
learning to see v2@:v1 as a single verb, and so recognize the "inside" form
as a single fork, while the "outside" form is two forks.

My strongest misgiving about the idea being called "Simple J" is that it
will not fit facilitate reading. In my own learning process I read far more
J than I wrote, and in the early stage most of what I read was not within
the range of what I could have written. An introduction to the language
that omits compositional conjunctions will not prepare people for reading
the J code that is actually out there to be read. It won't adequately help
somebody who's learning the language in order to make changes to an
existing J application. And it might be taken to suggest that the
difficulties encountered in learning J are due to programmers not having
kept things "simple" by using only verb trains. Difficulties will arise,
but that won't be their cause.

--Tracy
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to