I am glad, thank you for bringing  3!:2  and  3!:1  to my attention.  There
could be a high performance price to pay for going fully tacit from half
way tacit, not to mention, from explicit (which is another issue):

   v0=. 3 : 'R=. R , y'
   v0
3 : 'R=. R , y'

   v0 1 2 3 [ R=. 0
0 1 2 3


   lrep=: 3 :'5!:5<''y'''
   v1=: [: ". 'R=:R,' , lrep f.
   v1
[: ". 'R=:R,' , 3 : '5!:5<''y'''

   v1 1 2 3 [ R=. 0
0 1 2 3


   nrep=. ('3!:2 a.{~' ,&": a. i. 3!:1)
   v2=: ".@:('R=:R,' , nrep) f.
   v2
".@:('R=:R,' , '3!:2 a.{~' ,&": a. i. 3!:1)

   v2 1 2 3 [ R=. 0
0 1 2 3


   NB. Beware of line wrapping...
   stp=. ] (([ ((<;._1 '|Sentence|Space|Time|Space * Time') , (, */&.:>@:(1
2&{))@:(] ; 7!:2@:] ; 6!:2)&>) (10{a.) -.&a:@:(<;._2@,~) ]) [ (0 0 $
13!:8^:((0 e. ])`(12"_)))@:(2 -:/\ ])@:(".&.>)@:((10{a.) -.&a:@:(<;._2@,~)
])) ".@:('0( : 0)'"_)


   stp 666
  v0 (i.666) [ R=. 0
  v1 (i.666) [ R=. 0
  v2 (i.666) [ R=. 0
)
┌────────────────────┬──────┬──────────┬────────────┐
│Sentence            │Space │Time      │Space * Time│
├────────────────────┼──────┼──────────┼────────────┤
│  v0 (i.666) [ R=. 0│18432 │6.19968e_6│0.114273    │
├────────────────────┼──────┼──────────┼────────────┤
│  v1 (i.666) [ R=. 0│36608 │3.0683e_5 │1.12324     │
├────────────────────┼──────┼──────────┼────────────┤
│  v2 (i.666) [ R=. 0│567424│0.0021772 │1235.39     │
└────────────────────┴──────┴──────────┴────────────┘

What I would really like is the functionality of  4 : '(x)=: y'  without
the  :  and without paying a high performance price...  Mind you, I already
have it :)



On Wed, Jul 5, 2017 at 4:45 PM, Raul Miller <[email protected]> wrote:

> I am indeed not entirely sure what you are thinking of, but you can do
> stuff like this:
>
>    nrep=: '3!:2 a.{~',&":a.i.3!:1
>    ".nrep 1 2 3
> 1 2 3
>
> That said, if you really want 5!:5 functionality but as a verb, and if
> the use of : to construct that verb is a real problem for you, there's
> nothing stopping you from re-implementing that aspect of 5!:5 from
> scratch.
>
> Thanks,
>
> --
> Raul
>
>
>
> On Wed, Jul 5, 2017 at 4:30 PM, Jose Mario Quintana
> <[email protected]> wrote:
> > "you cannot avoid referring to the name"
> >
> > That is precisely the problem.  If one intends to use   ". , to solve the
> > original request, then the linear representation of the argument is
> > required and you have to name it.  Hence,
> >
> >    lrep=: 3 :'5!:5<''y'''
> >    lrep 1 2 3
> > 1 2 3
> >
> > works.  However,
> >
> >    lrep=: [: ". '5!:5 <''','''',~]
> >    lrep 1 2 3
> > |domain error: lrep
> > |       lrep 1 2 3
> >
> > does not.
> >
> > Therefore, as far as I can see, "it is not possible to produce of that
> kind
> > of verbs without involving an explicit verb (or an adverb or a
> conjunction)
> > which refer to its argument."  Perhaps you misunderstood my quoted
> remark;
> > I meant to say that an explicit verb which refers to its argument is
> > required, (or an explicit adverb which refers to its argument is
> required,
> > or an explicit verb which refers to one of its argument is required)."
> >
> > Moreover, some important primitives and foreigns are not tacit friendly
> > because of the naming requirement.
> >
> >
> >
> > On Wed, Jul 5, 2017 at 2:21 PM, Raul Miller <[email protected]>
> wrote:
> >
> >> you cannot avoid referring to the name, but there's no need to use the
> >> : conjunction for this.
> >>
> >> For example:
> >>
> >>    lrep=: [: ". '5!:5 <''','''',~]
> >>    lrep 'lrep'
> >> [: ". '5!:5 <''' , '''' ,~ ]
> >>
> >> Thanks,
> >>
> >> --
> >> Raul
> >>
> >>
> >> On Wed, Jul 5, 2017 at 1:20 PM, Jose Mario Quintana
> >> <[email protected]> wrote:
> >> > What a coincidence that this type of question was posed a day after I
> >> > suggested to incorporate the unofficial Jx interpreter verb extension
> =::
> >> > into the official interpreter!
> >> >
> >> > I am afraid that it is not possible to produce of that kind of verbs
> >> > without involving an explicit verb (or an adverb or a conjunction)
> which
> >> > refer to its argument (such as 3 :'5!:5<''y''' which is not tacit) .
> >> >
> >> > I would be glad if someone can prove me wrong.
> >> >
> >> >
> >> >
> >> > On Tue, Jul 4, 2017 at 8:54 PM, Nikolas Drosdek <
> >> [email protected]>
> >> > wrote:
> >> >
> >> >> This is exactly what I was looking for, thanks a lot!
> >> >>
> >> >> I am slightly confused by this however:
> >> >>
> >> >>    13 : '5!:5<''y'''
> >> >> (,'1')"_
> >> >>
> >> >> as it seems to replace y with 1 instead of giving 3 : '5!:5<''y'''.
> >> >>
> >> >> Thanks,
> >> >> N.D.
> >> >>
> >> >> 2017-07-05 3:28 GMT+03:00 Raul Miller <[email protected]>:
> >> >>
> >> >> > Well, that depend on what you mean by a "tacit expression".
> >> >> >
> >> >> > If your concept of tacit is one which does not use names, then no,
> >> >> > because this expression uses names.
> >> >> >
> >> >> > If you prefer a more relaxed concept of tacit programming, however,
> >> >> > you might try something like this:
> >> >> >
> >> >> >    lrep=: 3 :'5!:5<''y'''
> >> >> >    V=: [: ". 'R=:R,' , lrep
> >> >> >
> >> >> > Thanks,
> >> >> >
> >> >> > --
> >> >> > Raul
> >> >> >
> >> >> >
> >> >> >
> >> >> > On Tue, Jul 4, 2017 at 8:14 PM, Nikolas Drosdek
> >> >> > <[email protected]> wrote:
> >> >> > > Explicitly:
> >> >> > >
> >> >> > > R=: 0
> >> >> > > V=: 3 : 'R=: R , ...'
> >> >> > >
> >> >> > > Is there a way to write V in tacit form?
> >> >> > >
> >> >> > > Thanks,
> >> >> > > N.D.
> >> >> > > ------------------------------------------------------------
> >> ----------
> >> >> > > For information about J forums see
> http://www.jsoftware.com/forum
> >> s.htm
> >> >> > ------------------------------------------------------------
> >> ----------
> >> >> > For information about J forums see http://www.jsoftware.com/forum
> >> s.htm
> >> >> ------------------------------------------------------------
> ----------
> >> >> For information about J forums see http://www.jsoftware.com/forum
> s.htm
> >> >>
> >> > ------------------------------------------------------------
> ----------
> >> > For information about J forums see http://www.jsoftware.com/forum
> s.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
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to