I'd like to add to this discussion that verb trains are a prominent way for
verbs to serve as arguments to a function that returns a verb as its result.
Trains (forks and hooks) are central functional forms in J. (Moderating this
centrality is the fact that operators, i.e. adverbs and conjunctions, is
also common.)

It took me awhile to get clearly in mind that the syntactic structure of the
fork constitutes a higher-order function, in which the verbs are arguments.
A major theme of APL is hiding things, that is, making unstated what can go
without saying. Trains avoid an explicit symbol for their respective
relationships, making it implied by a combination of juxtaposition and
isolation.

It is by defining verbs as limited in the way verbs are limited that allows
them to be syntactically identified as arguments to trains. Because of this
I'm not able to see this as a weakness in J. I can see examining tacit form
as a whole and making decisions about whether it is advantageous or not, for
given contexts. I can't see how J could retain its distinctive features were
the line between verbs and operators effaced.

--
Tracy Harms


On Mon, Aug 15, 2011 at 10:58 AM, Marshall Lochbaum <[email protected]>wrote:

>
> Verbs are not first-class objects in the sense that they cannot be used as
> arguments or return values to other verbs. The reason is that if this were
> the case, it would be impossible to tell when to invoke verbs or when to
> use
> them as arguments; should
> f g h
> be interpreted as (f (g h)), two monadic applications, or (f g h), a single
> dyadic application? I consider this one of the weaknesses of J.
>
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to