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