> Change from a Noun to a verb, view its tacit version and apply it to data: > > dd=: 13 :'(y%2) > (?]) x$y' > > dd > (2 %~ ]) > [: (? ]) $ >
That is quite cool. I'm surprised that you can automatically get the tacit definition. Does this work for any explicitly defined verb? I'm also surprised at the way %~ came out. Do left hand arguments not require a & to bind the argument? It is strange to me that (1) works but (2) does not. It seems to me that (3) is the logical way to phrase either of them (ie. a fork with a constant right / left side). To reiterate, why does (1) work? (1) (2 %~ ]) > [: (? ]) $ (2) (] % 2) > [: (? ]) $ (3a) (2: %~ ]) > [: (? ]) $ (3b) (] %~ 2:) > [: (? ]) $ (4a) (%&2 ]) > [: (? ]) $ NB. incorrect (hook caught me out again)! (4b) ([: %&2 ]) > [: (? ]) $ NB. correct Cheers, Mike ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm