Thanks, David. I'll have to schedule an evening to take a good look at this.
At first sight your adverb F is smarter than the way I was attacking the problem. On Fri, Jul 20, 2012 at 9:02 PM, David Ward Lambert <[email protected]> wrote: > Question 1) 5!:6 can parenthesize trains, nouns, adverbs, and verbs. > > 5!:6@:<'hook' > ((0;(3 4 2$0);(0$0);0 _1 0 _1)&;:) (7 (+~) +) > > (+~) is a verb. (Recent email shows you slept through this.) > > (7 (+~) +) is a fork. Trains are more complicated than the 6 parts of > speech, remembering punctuation and copula. > > 7 , equivalently here as 7"_ , I call a verb. > > Leaving the nested parenthesized nouns you've already noted may be > parenthesized. > > > Adverb=: ([`)(`:6) > > 5!:6@:<'Adverb' > ([`)(`:6) > > These are parenthesized adverbs, being "partially fulfilled" > conjunctions. > > > Question 3) The adverb F may help answer your valence question: > > embed=: >@{.@[ , ] , >@{:@[ > assert '(*)' -: '()' embed '*' > assert 1 0 _ 8 1 2 -: (1 0 ; 8 1 2) embed _ > > F=: 1 : 0 > M=. 'm ' (embed ":) m > '()' embed M embed~ '' ; ": y > : > D=. (' d' ; ' ') (embed ":) m > '()' embed (x ;&": y) embed D > ) > > 'X Y'=: 'XY' > > assert '((m1 X) d0 Y)' -: X (0 F~ 1 F)~ Y > assert '(m0 (m1 Y))' -: (0 F)&(1 F) Y > assert '((m1 X) d0 (m1 Y))' -: X (0 F)&(1 F) Y > > > Fri, 20 Jul 2012 05:05:51 +0100 >> From: Ian Clark <[email protected]> >> To: Programming forum <[email protected]> >> Subject: [Jprogramming] fully parenthesized representation of a tacit >> verb >> Message-ID: >> <CAB2g=gALQ2c+b1d6AKyrW-3XsdP >> [email protected]> >> Content-Type: text/plain; charset=ISO-8859-1 >> >> For all my exposure to J, I can't answer the following simple(?) >> questions. Can someone help please? >> >> Take the fully parenthesized representation of a given tacit verb: foo >> (viz 5!:6 <'foo') >> --note: "verb", not "sentence" (which might be a noun). >> Take what's inside any pair of balanced parens: (...). Give it a name: >> baa, so we can formally replace (...) with (baa) . >> >> 1. Is baa always a verb? >> Answer: no, because I can make phrases like: (-~) appear. >> BUT are there only a small number of special cases I can detect >> and allow for, like (-~)? >> >> 2. If baa is not a verb, how can I determine its type? >> -short of actually assigning it to a local name: baa=. (...) and >> calling 4!:0<'baa' ? >> >> 3. Is there an easy way to tell if baa gets called monadically or >> dyadically, and if it gets the y-argument of foo -- and the x-arg too? >> Ignore the case of baa getting an intermediate noun -- I can >> determine this from the paren nesting structure. >> Ditto a constant > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
