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
