my version of this with new 903 trains, eval_z_ =: 1 : 'if. 2 ~: 3!:0 m do. m else. a: 1 : m end.' NB.1 : ' a: 1 : m' isNoun =: (0 = 4!:0 ::0:)@:< aar =: 1 : 'if. isNoun ''u'' do. q =. m eval else. q =. u end. 5!:1 < ''q'' ' vm2c =: APPLY =: 2 : ' u n' NB. verb to monad applied to n
9 (((&#) vm2c aar)`:6) '>:@:' NB. (ACA)CN = (ACAA) ((((>:@:) (>:@:) (>:@:)) (>:@:) (>:@:)) (>:@:) (>:@:)) (>:@:) (>:@:) +: 9 (((&#) vm2c aar)`:6) '>:@:' 7 23 On Monday, June 12, 2023 at 07:01:36 p.m. EDT, Jose Mario Quintana <jose.mario.quint...@gmail.com> wrote: (3 : '((y`:6) nc)`''''' ^: 9 +: (`'')) (`:6) 7 23 On Mon, Jun 12, 2023 at 6:57 PM Jose Mario Quintana < jose.mario.quint...@gmail.com> wrote: > Concisely, > > ncver=. 3 : '((y`:6) nc)`''''' > (ncver ^: 9 +: (`'')) (`:6) 7 > 23 > > > > > On Mon, Jun 12, 2023 at 6:46 PM Jose Mario Quintana < > jose.mario.quint...@gmail.com> wrote: > >> An alternative way is verbing, so to speak, the (nc) adverb taking and >> producing instead the gerunds corresponding to the verbs, powering the >> verbed adverb (ncver) and converting the resulting gerund back to the >> desired verb (extra parentheses and spaces for clarity), >> >> ncver=. 3 : 0 >> u=. (y`:6) >> v=. u nc >> v (`'') >> ) >> >> (ncver ^: 2 +: (`'')) (`:6) 7 >> 16 >> (ncver ^: 9 +: (`'')) (`:6) 7 >> 23 >> >> PS. The previous generation of interpreters allowed one (illegally, of >> course) to operate directly on the entities without having to go back >> and forth. For example, one can just write, >> >> +: ((Ver 'nc')^:9 adv) 7 >> 23 >> >> using the suitable utilities (Ver) for verbing and (adv) for adverbing. >> >> >> >> On Mon, Jun 12, 2023 at 6:12 AM Martin Kreuzer <i...@airkreuzer.com> >> wrote: >> >>> Dear all - >>> >>> Having used Fixed Power (u^:n y) before, I noticed that it works on >>> the verb-adverb compound to its left. >>> >>> Let's have a simple, silly example: >>> >>> nc=. 1 : '[: >: u' NB. defining an adverb 'increase' >>> >>> +: i. nc 7 NB. which works fine >>> 2 4 6 8 10 12 14 >>> >>> Using Fixed Power like >>> >>> +: nc ^:1 (7) >>> 15 >>> +: nc ^:2 (7) >>> 31 >>> >>> I do get the expected results (compound is executed once, twice). >>> >>> Here we have a verb, followed by two adverbs (if I understand correctly). >>> >>> What I have initially been looking for however, is how to apply the >>> *same* adverb repeatedly, like >>> >>> +: nc nc (7) >>> 16 >>> >>> while having the adverb part "nc nc" somehow abbreviated. >>> >>> What would be a (or the) way to phrase that ? >>> >>> Thanks. >>> -M >>> >>> ---------------------------------------------------------------------- >>> 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