It could be an adverb that returns an adverb, couldn't it?
On 5/17/09, Henry Rich <[email protected]> wrote: > I don't think you're right about this. b has to be a verb to get results: > > a =: 1 + b&+ > b =: + > a 5 > 6 > b =: 7 > a 5 > |domain error: b > | a 5 > > > Henry Rich > > Viktor Cerovski wrote: >> >> bill lam-2 wrote: >>> On Sat, 16 May 2009, Tracy Harms wrote: >>>> invocation, and verbs must be defined prior to execution. >>> IIRC undefined name are treated as verb. Suppose b is not yet defined, >>> >>> a=: 3 + b >>> a >>> 3 + b >>> b=: 1 >>> a 10 >>> |domain error: b >>> | a 10 >>> b=: *: >>> a 10 >>> 103 >>> >> It's a bit more complicated. b is more like a free variable of universal >> type, >> which means it can become anything: noun, verb, adverb or conjunction. >> >> Such semantics is unusual (I can think only of Mathematica here), >> and the up side is that some things, like mutually recursive verbs, or >> parametric verbs, are easy to define, but the down side is that we >> don't know whether some expression with such a free variable will become >> well formed in the course of further interpretation or not, just as your >> example >> illustrates. >> >> Another apparently similar, but meaningless, expression is: >> c=:d+1 >> |value error: d >> | c=: d+1 >> >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
