Another difficulty, however, is stuff like this: rscan=. 1 : '((>: - m |&# y) |. m)/y' (+`%`* rscan\. ,: +`%`* a2\.) 1 2 3 4 5 6 7 |syntax error | ( +`%`*rscan\.,:+`%`*a2\.)1 2 3 4 5 6 7
-- Raul On Fri, Apr 22, 2016 at 8:42 PM, Jose Mario Quintana <[email protected]> wrote: > There is a reason why the exercises 2 and 3 (described in [0]) are > difficult. The Toolkit adverbs , hg and adv, facilitate the production of > adverbs which are capable to render whatever explicit adverbs can; however, > when the explicit adverbs produce verbs (e.g., u rscan) and the arguments > of these verbs (e.g., y) are also referred within the definition of the > explicit adverbs (e.g., 1 : '((>: - m |&# y) |. m)/y') then the > straightforward way to produce tacit adverbs via hg or adv is not > satisfactory because the products (e.g., u (1 : '((>: - m |&# y) |. m)/y')) > involve unresolved explicit definitions. > > The following are hints to find (fully tacit) solutions for these > particular exercises; however, they can be applied to similar tasks. > Moreover, general solutions for this kind of situation are possible using a > tool that will be shown in the near future (stay tuned). > > H > i > n > t > s > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > . > > > > > > Exercise 2. Notice that: > > +`-`*`% &( ( ([ |.~ >: o - o (|&#)) ; an y))\. 1 2 3 4 5 > 6 7 8 > ┌─────────┬───────────────────┐ > │┌─┬─┬─┬─┐│┌─┬───────────────┐│ > ││-│*│%│+│││0│1 2 3 4 5 6 7 8││ > │└─┴─┴─┴─┘│└─┴───────────────┘│ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬─────────────┐ │ > ││*│%│+│-│││0│2 3 4 5 6 7 8│ │ > │└─┴─┴─┴─┘│└─┴─────────────┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬───────────┐ │ > ││%│+│-│*│││0│3 4 5 6 7 8│ │ > │└─┴─┴─┴─┘│└─┴───────────┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬─────────┐ │ > ││+│-│*│%│││0│4 5 6 7 8│ │ > │└─┴─┴─┴─┘│└─┴─────────┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬───────┐ │ > ││-│*│%│+│││0│5 6 7 8│ │ > │└─┴─┴─┴─┘│└─┴───────┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬─────┐ │ > ││*│%│+│-│││0│6 7 8│ │ > │└─┴─┴─┴─┘│└─┴─────┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬───┐ │ > ││%│+│-│*│││0│7 8│ │ > │└─┴─┴─┴─┘│└─┴───┘ │ > ├─────────┼───────────────────┤ > │┌─┬─┬─┬─┐│┌─┬─┐ │ > ││+│-│*│%│││0│8│ │ > │└─┴─┴─┴─┘│└─┴─┘ │ > └─────────┴───────────────────┘ > > (Incidentally, this suggests a potential alternative sequential approach > that one could follow if the verbs within the gerund were very expensive to > compute.) > > > Exercise 3. > > These are some hints for some solutions: > > 0. Use hg or adv to produce directly the form > [`([: I. u -:"_1 _ ])`(u"_)} (see Raul's ritemT adverb [1]) > > 1. Notice that ([`([:I. u -:"_1 _ ])`(u"_)}) (tie&''adv) is a > gerund associated to the verb [`([: I. u -:"_1 _ ])`(u"_)} . > What remains to be accomplished is to replace the instances of > u in the gerund by the argument of the adverb. > > 2. Use one the the combinations mentioned in [2] > > 3. There is, at least, another approach. > > > References > > [0] [Jprogramming] Adverbial Tacit Jym > http://www.jsoftware.com/pipermail/programming/2016-March/044692.html > > [1] [Jprogramming] Replace Items > http://www.jsoftware.com/pipermail/programming/2016-March/044625.html > > [2] [Jprogramming] Adverbial Tacit Jym -spoilered > http://www.jsoftware.com/pipermail/programming/2016-April/045003.html > > > > On Sun, Mar 13, 2016 at 10:59 PM, Jose Mario Quintana < > [email protected]> wrote: > >> Welcome to the Adverbial (and Conjunctional) Tacit Jymnasium :) >> >> Orthodox and wicked routines will be practiced here for those interested >> in developing adverbial (and conjunctional) tacit muscles. Official >> interpreters will be the standard equipment; however, Unbox, Jx, and other >> J interpreters (including Golden Age J interpreters), as well as Toolkits , >> see for example [0], and alike (e.g., the tacit translator), are in general >> more than acceptable although occasionally some restrictions might be >> imposed aiming to develop certain muscles. Since adverbial (and >> conjunctional) tacit writing can (following two closely related approaches) >> be reduced to verbal tacit writing, this is also a place to exercise verbal >> tacit muscles. In addition, some adverbs (and conjunctions) which will be >> eventually shown here can provide general support for producing tacit >> verbs, adverbs and conjunctions. >> >> Instructors will describe an exercise and, unless otherwise specified in >> advance, will be prepared to show at least one way to perform it if patrons >> (including other instructors) have not performed the exercise after a >> reasonable time; alright, they have bragging rights either way ;) The >> exercises would typically involve producing adverbs with bonus points for >> producing fixed versions of the adverbs and their products. Exercises are >> not required to be brand new. Given credit to the originators of certain >> techniques is not necessary (but you know who you are and bragging is >> allowed). Spoiler alerts by instructors and patrons will be appreciated. >> >> Instructors (Dan, Thomas et al. are you listening?), not to mention >> patrons (including beginners), are all very welcome here. How long will >> the Jym remain open? Indefinitely, as long as there enough patrons and >> instructors or we are kicked out of here. >> >> Let us start with a few exercises with different degrees of difficulty >> (feel free to ask any questions just be patient with me, sometimes I >> disappear for a few days): >> >> >> - Exercise 0. Rank infinity >> >> Produce a (tacit, of course) adverb a0 such that u a0 produces u"_ >> where u is a noun or a verb, for example, >> >> u a0 >> u"_ >> >> *:@:(+/) a0 >> *:@:(+/)"_ >> >> u=. 1 2 3 >> >> u a0 >> 1 2 3"_ >> >> 1 2 3 a0 >> 1 2 3"_ >> >> >> - Exercise 1. Operating on the first and last items >> >> Produce an adverb a1 such that u a1 produces {. u {: where u is a verb, >> for example, >> >> erase'u' >> 1 >> >> u a1 >> {. u {: >> >> * a1 >> {. * {: >> >> * a1 2 3 5 7 >> 14 >> >> >> - Exercise 2. Back insert >> >> Produce an adverb a2 which is a tacit counterpart of the explicit adverb >> rscan, see [1], >> >> rscan=. 1 : '((>: - m |&# y) |. m)/y' >> >> for example, >> >> (+`%`* rscan\. ,: +`%`* a2\.) 1 2 3 4 5 6 7 >> 1.16184971 0.161849711 12.3571429 4.11904762 0.119047619 42 7 >> 1.16184971 0.161849711 12.3571429 4.11904762 0.119047619 42 7 >> >> (+`-`*`% rscan\. ,: +`-`*`% a2\.) 1 2 3 4 5 6 7 8 >> _0.6 1.6 0.8 3.75 _0.25 5.25 0.875 8 >> _0.6 1.6 0.8 3.75 _0.25 5.25 0.875 8 >> >> >> - Exercise 3. Replace items >> >> Produce an adverb a3 which is a tacit counterpart of the explicit adverb >> ritem, see [2], >> >> ritem =: 1 : (':' ; 'x (I.m-:"_1 _ y) } m') >> >> for example, >> >> C=. 3 4$i.8 >> A=. i.3 2 4 >> >> assert 9 8 7 6 (C ritem -: C a3) 0 1 2 3 >> assert (100%i.2 4) (A ritem -: A a3) 16+i.2 4 >> >> >> References >> >> [0] [Jprogramming] Tacit Toolkit (was dyadic J) >> >> http://www.jsoftware.com/pipermail/programming/2015-December/043757.html >> >> [1] [Jprogramming] Am I understanding m/y ? >> >> http://www.jsoftware.com/pipermail/programming/2016-February/044483.html >> >> [2] [Jprogramming] Replace Items >> http://www.jsoftware.com/pipermail/programming/2016-March/044625.html >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
