And yet, all of your verbs can be pure tacit.

For example, you could use

   is=:1 :'(m)=:y'

That said, there is an argument that side effects make a verb impure. But I
am ignoring that kind of thing.

Thanks,

-- 
Raul

On Friday, July 14, 2017, Jose Mario Quintana <[email protected]>
wrote:

> That is a different matter.
>
> Indeed, "=: works and is simple" as long as one is not concerned about
> producing (pure) tacit verbs.  In that latter context, apparently, it does
> not work well, is not simple to use and its forced use might trigger gross
> space and time inefficiencies (for example, as discussed recently in the
> "[Jprogramming] Side effects in tacit expressions" thread).
>
> Introducing new primitives is, in my view, a matter of perspective and
> opportunity.  I thought the verbs  =.. and =:: had sufficient merits and I
> had the means to include them in the version of the J interpreter that I
> use almost all the time (Jx).  I just thought this could be an opportunity
> to make the official interpreter a little more tacit friendly for the
> benefit of other tacit programming hard-core fans; that is all.
>
> In any case, there are other much more important unfortunate omissions, in
> current official implementations, that drastically hinder tacit programming
> (but that is yet another topic for another time).
>
>
> On Thu, Jul 13, 2017 at 8:36 PM, Raul Miller <[email protected]
> <javascript:;>> wrote:
>
> > Ok, but a routine being interesting is not sufficient motivation for
> > incorporating it as a language primitive. There are just too many
> > interesting possibilities.
> >
> > =: works and is simple.
> >
> > Thanks,
> >
> > --
> > Raul
> >
> > On Thursday, July 13, 2017, Jose Mario Quintana <
> > [email protected] <javascript:;>> wrote:
> >
> > > These [0, 1, 2, 3, 4, 5] are more forum instances of use or suggested
> use
> > > of the verb 4 :'(x)=: y' (or equivalent),
> > >
> > > [0] [Jprogramming] Tacit or Explicit  Raul Miller
> > >     http://www.jsoftware.com/pipermail/programming/2017-
> > > January/046538.html
> > >
> > > [1] [Jbeta] with effort for inplace assignment performance  Raul Miller
> > >     http://www.jsoftware.com/pipermail/beta/2016-July/008397.html
> > >
> > > [2] [Jprogramming] copula  Raul Miller
> > >     http://www.jsoftware.com/pipermail/programming/2014-
> > > November/040246.html
> > >
> > > [3] [Jbeta] Why isn't copula a dyadic verb?  Pascal Jasmin
> > > http://www.jsoftware.com/pipermail/beta/2014-November/007754.html
> > >
> > > [4] [Jprogramming] copula  Dan Bron
> > >     http://www.jsoftware.com/pipermail/programming/2014-
> June/037704.html
> > >
> > > [5] Jforum: Syntax error on "is =: =:"  josemarioquintana
> > > http://www.jsoftware.com/pipermail/general/2002-June/009932.html
> > >
> > >
> > > On Wed, Jul 12, 2017 at 8:11 PM, Jose Mario Quintana <
> > > [email protected] <javascript:;> <javascript:;>> wrote:
> > >
> > > > Sure, there are different ways to perform a task, for example,
> > > >
> > > >    2&* 1 2 3
> > > > 2 4 6
> > > >    +:  1 2 3
> > > > 2 4 6
> > > >
> > > > What do you mean by "the rest of that"?
> > > >
> > > >
> > > > On Wed, Jul 12, 2017 at 7:40 PM, Raul Miller <[email protected]
> <javascript:;>
> > > <javascript:;>>
> > > > wrote:
> > > >
> > > >> All [1] needed was
> > > >>
> > > >> add=:4 :0
> > > >>   ((0{::y),'__x')=: ".1{::y
> > > >> )
> > > >>
> > > >> But I don't really follow the rest of that.
> > > >>
> > > >> Thanks,
> > > >>
> > > >> --
> > > >> Raul
> > > >>
> > > >>
> > > >>
> > > >> On Wed, Jul 12, 2017 at 7:14 PM, Jose Mario Quintana
> > > >> <[email protected] <javascript:;> <javascript:;>>
> wrote:
> > > >> > The assignments are a consequence of J's agreement; see [0] for
> > > example.
> > > >> > If one wants the effect of 'a b c' =:i.3 4 5  using the verb  is
> > (or
> > > a
> > > >> > similar verb) then one can use 'a b c' is i.3 4 5  :)
> > > >> >
> > > >> > How is  'abc' is"0 i.3 4 5  useful?  I do not know...  Who knows?
> > > >> >
> > > >> > How is the  verb  is  (or a similar verb)  useful?  See [1, 2] for
> > > >> instance
> > > >> > (not to mention for debugging tacit verbs).
> > > >> >
> > > >> > References
> > > >> >
> > > >> > [0] Rank and Uniformity  Roger K.W. Hui
> > > >> >     http://www.jsoftware.com/papers/rank1.htm
> > > >> >
> > > >> > [1] [Jprogramming] Dynamic Language Features in J?  Oleg Kobchenko
> > > >> >     http://www.jsoftware.com/pipermail/programming/2006-Decembe
> > > >> r/004479.html
> > > >> >
> > > >> > [2] [Jprogramming] Saving Nouns as Permanent Data  Jose Mario
> > Quintana
> > > >> >     http://www.jsoftware.com/pipermail/programming/2008-April/
> > > >> 010529.html
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >> > On Wed, Jul 12, 2017 at 4:00 PM, Don Kelly <[email protected]
> <javascript:;>
> > > <javascript:;>> wrote:
> > > >> >
> > > >> >> How is "is" more useful  than  from x=: y
> > > >> >>
> > > >> >> what is interesting is that
> > > >> >>
> > > >> >> 'abc' is "0 i.3 4 5 displays the i.3 4 5 array but the value of
> abc
> > > >> >> appears as : although a, b, c correspond to
> > > >> >>
> > > >> >> (<0 1 2; 3; 4){i. 3 4 5
> > > >> >>
> > > >> >> 19 39 59
> > > >> >>
> > > >> >>
> > > >> >> In the use of "is" in this case it appears that it
> > > >> >>
> > > >> >>
> > > >> >> whereas 'abc' =: i. 3 4 5 gives stores the noun abc as the array
> > but
> > > >> >> leaves a, b and c undefined
> > > >> >>
> > > >> >> and 'a b c' =:i.3 4 5  gives 3  (4 by 5 )arrays
> > > >> >>
> > > >> >>
> > > >> >> Don Kelly
> > > >> >>
> > > >> >>
> > > >> >>
> > > >> >> On 2017-07-12 11:08 AM, Jose Mario Quintana wrote:
> > > >> >>
> > > >> >>> Maybe I am misunderstanding...  Are you trying to imply that one
> > > >> cannot
> > > >> >>> find a verb such as  is=: 4 :'(x)=:y'  useful?
> > > >> >>>
> > > >> >>>
> > > >> >>> On Tue, Jul 11, 2017 at 8:37 PM, Raul Miller <
> > [email protected] <javascript:;>
> > > <javascript:;>>
> > > >> >>> wrote:
> > > >> >>>
> > > >> >>> Ok, so, just to be clear - this has nothing to do with default
> > > >> assignment?
> > > >> >>>>
> > > >> >>>> That said, it's probably intentional that there's no verb form
> of
> > > =:
> > > >> >>>> (or =.). For example, given
> > > >> >>>>
> > > >> >>>> is=: 4 :'(x)=:y'
> > > >> >>>>
> > > >> >>>> consider:
> > > >> >>>>
> > > >> >>>>    'abc' is"0 i.3 4 5
> > > >> >>>>
> > > >> >>>> Questions:
> > > >> >>>>
> > > >> >>>> (1) what is
> > > >> >>>>
> > > >> >>>>     a+b+c
> > > >> >>>>
> > > >> >>>> (2) how is this useful?
> > > >> >>>>
> > > >> >>>> Thanks,
> > > >> >>>>
> > > >> >>>> --
> > > >> >>>> Raul
> > > >> >>>>
> > > >> >>>>
> > > >> >>>> On Tue, Jul 11, 2017 at 12:53 PM, 'Pascal Jasmin' via
> Programming
> > > >> >>>> <[email protected] <javascript:;> <javascript:;>>
> wrote:
> > > >> >>>>
> > > >> >>>>> Don't fixate on just Henry's syntax or default values.
> > > >> >>>>>
> > > >> >>>>> The basic "delegated function assignment" is:
> > > >> >>>>>
> > > >> >>>>> assign =: 4 : '(x) =: y'
> > > >> >>>>>
> > > >> >>>>> its a verb, that can be composed with others (or rewritten
> for a
> > > >> >>>>>
> > > >> >>>> different/enhanced delegated assignment function) in a wide
> > variety
> > > >> of
> > > >> >>>> ways
> > > >> >>>> that include all of the discussed applications in this thread.
> > > >> >>>>
> > > >> >>>>> problem 1:  can only use =: not =.
> > > >> >>>>>
> > > >> >>>>> problem 2:  performance issue in any "delegated function
> > > assignment"
> > > >> >>>>>
> > > >> >>>> that wouldn't (or might not) exist if there were verb (and
> adverb
> > > >> forms I
> > > >> >>>> proposed) forms of copula.
> > > >> >>>>
> > > >> >>>>> I've just repeated previous statements entirely here.  Perhaps
> > the
> > > >> >>>>>
> > > >> >>>> mistake I made was not providing an ideal example to your first
> > > >> request.
> > > >> >>>>
> >
> >
> ----------------------------------------------------------------------
> 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