Sure, and the biggest problem here is the use of globals for arguments. The verbs themselves can be pure, but all we're really doing is rearranging the deck chairs.
Thanks, -- Raul On Sun, Jul 16, 2017 at 3:33 PM, Jose Mario Quintana <[email protected]> wrote: > At least we agree, I think, on one thing " in explicit programming > [typically] names refer to arguments while in tacit programming they do > not." Thus, is not just a matter of tacit aesthetics, there are some > consequences which might be difficult to evade: > > ('`u v') =: +/`*: > u@:v f. > +/@:*: > > ('`u v') =:: +/`*: NB. Jx > ┌───────┬──┐ > │┌─┬───┐│*:│ > ││/│┌─┐││ │ > ││ ││+│││ │ > ││ │└─┘││ │ > │└─┴───┘│ │ > └───────┴──┘ > u@:v f. > +/@:*: > > ('`u v') is +/`*: NB. > |domain error > | (m) =:y > is > 1 : '(m)=:y' > > So, assuming I understood the intended use of your adverb is, I am afraid > your adverb cannot be used without typical limitations. > > > > On Sun, Jul 16, 2017 at 1:59 PM, Raul Miller <[email protected]> wrote: > >> I think you are trying to evade a basic issue, which is that the >> distinction between tacit and explicit programming is that in explicit >> programming names refer to arguments while in tacit programming they >> do not. >> >> Altering the implementation to come up with evasive ways of having >> named arguments is what's stinky, from my point of view. >> >> Thanks though, >> >> -- >> Raul >> >> >> On Sun, Jul 16, 2017 at 12:13 PM, Jose Mario Quintana >> <[email protected]> wrote: >> > Nice try but when I am wearing my hard-core tacit programmer hat I do not >> > like to look at blatant ugly explicit definitions which are referring to >> > arguments. ;) Heck, I do not like the smell of verbs of this kind >> either, >> > >> > stinky=. ('''' , [ , '''' , a. {~ 38 40 52 32 58 39 40 120 41 61 58 32 >> 121 >> > 39 41"_) 128!:2 ] >> > >> > PS. Feel free to bring any argument suggesting that verbs involving side >> > effects are not tacit. >> > >> > >> > On Fri, Jul 14, 2017 at 6:46 PM, Raul Miller <[email protected]> >> wrote: >> > >> >> 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/pipe >> rmail/programming/2006-Decembe >> >> > > > >> r/004479.html >> >> > > > >> > >> >> > > > >> > [2] [Jprogramming] Saving Nouns as Permanent Data Jose Mario >> >> > > Quintana >> >> > > > >> > http://www.jsoftware.com/pipe >> rmail/programming/2008-April/ >> >> > > > >> 010529.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 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
