Right, that was a variant of Exercise 1,  u a1x0  does not produce  {. u {:
, and I was planning to address it a little bit later but now it is not a
bad time.  Two other solutions, based on the same idea, are shown in,

16
15
14
13
12
11
10
 9
 8
 7
 6
 5
 4
 3
 2
 1
 0

a1x0=. /(&({. , {:))

a1x0 =: /(&({."_1@:(,: |.)))


On Thu, Mar 24, 2016 at 8:51 PM, Raul Miller <[email protected]> wrote:

> You left out Pascal's
>
> S
>
> p
>
> o
>
> i
>
> l
>
> e
>
> r
>
>
>
> s
>
> p
>
> a
>
> c
>
> e
>
>
>
> .
>
> .
>
> .
>
>
>     /(@(0 _1&{))
>
> And that's worth mentioning here.
>
> --
> Raul
>
>
> On Thu, Mar 24, 2016 at 4:06 PM, Jose Mario Quintana
> <[email protected]> wrote:
> > SPOILER ALERT
> >
> > Solutions to,
> >
> > - 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
> >
> >
> > in,
> >
> > 10
> >  9
> >  8
> >  7
> >  6
> >  5
> >  4
> >  3
> >  2
> >  1
> >  0
> >
> >
> >
> > a1=. ({.`)(`{:)(`:6)
> >
> > a1=. (({.`'') , ] , ({:`'')c) hg
> >
> > a1=. train o ({.cv ; ] ; {:cv) f.adv
> >
> >
> > Discussion
> >
> > First solution,
> >
> > a1=. ({.`)(`{:)(`:6)
> >
> > This classic orthodox form illustrates a combination of the two basic
> > building forms.  For a general explanation see the link in Dan's post [0]
> > (together with another solution based on @. by Pascal).
> >
> > Second solution,
> >
> > a1=. (({.`'') , ] , ({:`'')c) hg
> >
> > This form illustrates the general "holy grail" method for producing
> adverbs
> > via the form  v hg;  hg is defied in the post [1].  The verb  v
> transforms
> > the atomic representation of the argument of  v hg  into the gerund whose
> > train is the desired product of the adverb  v hg.  A sequence of steps
> for
> > building v (and consequently the adverb a1) are shown, in a session
> excerpt
> > (edited for clarity), below,
> >
> >    c =. "_
> >
> >       *  (          ]           )    hg
> > *
> >       *  (({.`'') , ]           )    hg
> > {. *
> >       *  (({.`'') , ] , ({:`'')c)    hg
> > {. * {:
> >
> >       u  (({.`'') , ] , ({:`'')c)    hg
> > {. u {:
> >
> >    a1=.  (({.`'') , ] , ({:`'')c)    hg
> >
> > Third solution
> >
> > a1=. train o ({.cv ; ] ; {:cv) f.adv
> >
> > This form illustrates the general "sorcerer's cauldron" method for
> > producing adverbs via the form  v adv; adv is defined in the post [2].
> The
> > verb  v  transforms directly the argument of  v adv  into the desired
> > product of the adverb  v adv.  A sequence of steps for building v (and
> > consequently the adverb a1) are shown, in a session excerpt (edited for
> > clarity), below,
> >
> >       *                 ]         f.adv
> > *
> >       *         ({.cv ; ]       ) f.adv
> > ┌──┬─┐
> > │{.│*│
> > └──┴─┘
> >       *         ({.cv ; ] ; {:cv) f.adv
> > ┌──┬─┬──┐
> > │{.│*│{:│
> > └──┴─┴──┘
> >       * train o ({.cv ; ] ; {:cv) f.adv
> > {. * {:
> >
> >       u train o ({.cv ; ] ; {:cv) f.adv
> > {. u {:
> >
> >    a1=. train o ({.cv ; ] ; {:cv) f.adv
> >
> > The adverb  cv  produces a wicked verb that produces the argument of the
> > adverb  cv   regardless of the argument taken by the wicked verb; in that
> > sense  cv  is a generalization of  "_, for example,
> >
> >     {.cv _
> > {.
> >
> >    ({.cv _) 2 3 5 7
> > 2
> >
> > Writing  cv  is a challenging exercise and a solution can be found, of
> > course, in the J Wicked Toolkit found in the post [2].
> >
> > The sentence  train o ({.cv ; ] ; {:cv)  produces the  {. u {:  train
> > (naturally) and its variations are so handy that can be simplified; for
> the
> > example at hand, as  [: {.cv ] {: Train  where  Train  is a recurrent
> > adverb emulating strand notation (aka, multiple adverb).  Versions of
> this
> > adverbs, able to run on an official J interpreter (Jo), are coming in the
> > near future to the Jym.
> >
> >
> > References
> >
> > [0] [Jprogramming] Adverbial Tacit Jym
> >
> http://www.jsoftware.com/pipermail/programming/2016-March/044743.html
> >
> > [1] [Jprogramming] Adverbial Tacit Jym
> >
> http://www.jsoftware.com/pipermail/programming/2016-March/044789.html
> >
> > [2] [Jprogramming] Tacit Toolkit (was dyadic J)
> >
> http://www.jsoftware.com/pipermail/programming/2015-December/043757.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
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to