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

Reply via email to