On Thu, Aug 13, 2009 at 10:56 PM, Viktor
Cerovski<[email protected]> wrote:
> Raul Miller-4 wrote:
>> On Thu, Aug 13, 2009 at 7:27 PM, Viktor
>> Cerovski<[email protected]> wrote:
>>>   adv=:/
>>>   conj=:"
>>>   A =: v adv conj
>>>   A
>>> v/conj
>>
>> adv has "executed" and v/ is its result.
>
> That is (less than) the half of the answer, because in order to
> produce v/conj, two "executions" take place:
> 1) the bident (v adv) is evaluated to produce the verb v/, and then

No.

The rule used here is Adverb, not Bident.

See http://www.jsoftware.com/help/dictionary/dicte.htm

> 2) the bident (v/)conj is evaluated to produce the adverb v/conj

Yes.

> The (version of Dan's) question now is: why 2) does not produce v/" instead
> of v/conj, or even 1) does not produce (v adv) instead of (v/)?

Do you understand the difference, now?

>>>   *: A
>>> v/"0 0 0
>>
>> A has "executed" and v/"0 0 0 is its result.
>>
> True. Then, a few lines later, with v defined to be +, we got:
>
>   *: A 1 2 3
> 14
>
> instead of:
>
>   (+/"0 0 0)1 2 3
> 1 2 3

But, of course A was defined as v/conj
(the conjunction conj curried with the left
verb v/).  and conj had been changed
from " to @

In other words, conj gets evaluated
when A is evaluated.

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

Reply via email to