I don't really know. All I know is that if I have x and y explicitly
specified in the definition of an adverb or conjunction that it does not
appear to execute until x and y are supplied. You can see that by putting a
trace, some output which occurs when the definition is executed. If no x or
y it executes earlier. If x or y is present it waits until x and/or y are
given. You can put tests into the definition to determine if u and v are
verbs or nouns. You can put in tests to look at x and y and change how the
adverb or conjunction executes. That seems to me that the execution is
deferred when x or y is present.

It would seem to me that if trace were in the definition that that would
show even if the definition were discarded.

On Thu, Jun 9, 2011 at 8:08 AM, Raul Miller <[email protected]> wrote:

> You are talking about two different things here, I think.
>
> An evaluation step has to happen (which involves resolving what the
> name of the conjunction refers to) before the interpreter can see
> whether it contains both an x or a y and a m, n, u or v.
>
> Now... you could argue that once that investigation has happened, the
> definition which was inspected should be discarded, and the name which
> was used to find the definition should be retained in its place.  But
> I think we can at least agree that this would be a change in how the
> language works:
>
>   f1_ex_=:1 :'start u y'
>   f2_ex_=:1 :'start u ]'
>   start=: 10
>   start_ex_=: 100
>   + f1_ex_ 1000
> 1010
>   + f2_ex_ 1000
> 1100
>
> --
> Raul
>
> On Thu, Jun 9, 2011 at 8:53 AM, Don Guinn <[email protected]> wrote:
> > Not necessarily. The definition is completed when all arguments are
> > supplied.  If the definition of an adverb or conjunction contains x or y
> the
> > definition is delayed until those arguments are supplied.
> >
> > On Thu, Jun 9, 2011 at 12:40 AM, Ian Clark <[email protected]>
> wrote:
> >
> >> >>Anyways, adverbs and conjunctions are evaluated when building tacit
> >> >>verbs, so J cannot defer their name resolution until later unless you
> >> >>embed them in an explicit verb.
> >> >
> >> > Thanks, Raul -- I guess that perfectly describes the situation I've
> >> > run up against. :)
> >> > Plus the remedy, which is the one I've resorted to. :/
> >> > But IMO that's like Molière: Q: Why does morphine make you sleep?...
> >>
> >> Sorry Raul, I entirely missed the point, didn't I? ...
> >>
> >> If adverbs and conjunctions combine verbs into new verbs, then those
> >> new verbs logically come into existence at definition time, not
> >> run-time. Hence the conjunction has to be expanded at definition time:
> >> you can't avoid it.
> >>
> >> Very taken-up right now with clearly explaining J concepts to novices.
> >> Seems I needed this one explaining to myself: I was implicitly viewing
> >> a conjunction as a kind of super-verb taking extended arguments.
> >>
> >> Definitely an APL mindset there
> >> .
> >>
> >>
> >>
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to