Thanks for implicitly pointing out that, in my example, 4 : makes much more sense than 3 : . That shows how often I use those forms. :)
Strictly speaking, I would be tempting to call 4 : 'x + y' " 0 a hybrid. Then again, explicitly defined verbs often include tacit constructions and could also be referred as hybrid. Yet, they are customary called explicit and it is fine with me; thus, by analogy, it should be fine with me if 4 : 'x + y' " 0 is called tacit. On Sun, Jan 22, 2017 at 9:27 PM, Don Guinn <[email protected]> wrote: > The entire verb is tacit, but it contains an explicit verb. > 3 : 'x + y' " 0 > +-----------+-+-+ > |+-+-+-----+|"|0| > ||3|:|x + y|| | | > |+-+-+-----+| | | > +-----------+-+-+ > > It is not unusual that explicit definitions contain tacit expressions and > tacit definitions contain explicit definitions. When the "0 is applied it > does not modify the explicit verb. It creates a new verb and it is tacit. > > But the definition really doesn't make much sense as the explicit verb is > defined as monadic but contains both x and y, which should be dyadic. Of > course it will run monadically if you define x as a global. > > f=:3 : 'x + y' " 0 > > x=:3 > > f 4 > > 7 > > On Sun, Jan 22, 2017 at 6:46 PM, Jose Mario Quintana < > [email protected]> wrote: > > > Alright, it seems you meant just the explicit definition form for adverb, > > conjunction and verbs; that is, n : m at least for n = 1, 2, 3, and 4 (I > > am not sure if you include n=13 or not). > > > > Your comment about the main difference between explicit and tacit > entities > > leads me to believe that our views might not be too far apart, or at > least > > we have some common ground for discussion. Having a private namespace is > > an intrinsic property of an entity and I (currently) make a distinction > > between a production process and its product (e.g., the product of 13 : > 'x > > + y' is, the explicitly defined, tacit verb + ). > > > > What I find odd is your assertion that, say, 3 : 'x + y' " 0 is tacit. > > Why? Because, for the same reason you stated, presumably the verb > > (produced by), > > > > 3 : 'x + y' (" 0) > > 3 : 'x + y'"0 > > > > would also be tacit, as well as the verb, > > > > 3 : 'x + y' f. > > 3 : 'x + y' > > > > However, this last verb certainly has its very own private namespace and > it > > looks quite explicit to me. > > > > Where did I go wrong? > > > > By the way, from my vantange point certain tacit verbs , for instance 3 > : > > '0' , can have their own private (albeit pretty useless) namespace. > > > > > > On Saturday, January 21, 2017, Henry Rich <[email protected]> wrote: > > > > > No, of course I meant 1 : y etc. > > > > > > The main difference between explicit and tacit entities is that > explicit > > > entities have a private namespace. > > > > > > Henry Rich > > > > > > On 1/21/2017 6:16 PM, Jose Mario Quintana wrote: > > > > > >> However, if the tacitness of a verb would really depend on the process > > by > > >> which it is produced (the notion that was being entertained), as > > oppossed > > >> to an intrinsic property of the verb, then there would be no much > point > > in > > >> talking about a difference in performance (tacit vs explicit) because, > > if > > >> I > > >> am not mistaken, for every explicit verb there woul be a tacit verb > with > > >> identical performance and viceversa. > > >> > > >> By the way, according to that notion, the verb - : + would be > > >> explicit... Really? > > >> > > >> > > >> On Saturday, January 21, 2017, Devon McCormick <[email protected]> > > >> wrote: > > >> > > >> I agree with Don's assertion "...the difference in performance is not > > that > > >>> large compared to other considerations > > >>> ." > > >>> Personally, I find tacit more difficult to read than explicit, not > the > > >>> least because the names I choose for temporary variables in explicit > > code > > >>> provide some documentation about my intent. > > >>> > > >>> I'll use tacit for short, simple phrases, like > > >>> > > >>> (]}.~[:>:]i:[)"(0 1) NB. Everything in y after last x > > >>> NB.EG 'someFile.htm' -: '/' (]}.~[:>:]i:[) ' > > >>> https://some.site.domain/Folder/someFile.htm' > > >>> > > >>> because I can figure them out easily but anything much longer than > this > > >>> becomes an impediment to reading, in my experience. > > >>> > > >>> > > >>> > > >>> On Sat, Jan 21, 2017 at 11:47 AM, Louis de Forcrand < > [email protected] > > >>> <javascript:;>> > > >>> wrote: > > >>> > > >>> On the topic of f., one must be careful when using f. on a recursive > > verb > > >>>> (or one that uses another recursive verb). > > >>>> > > >>>> Louis > > >>>> > > >>>> On 21 Jan 2017, at 16:22, Don Guinn <[email protected] > > <javascript:;>> > > >>>>> > > >>>> wrote: > > >>> > > >>>> When does it matter whether a statement is tacit or explicit or a > > >>>>> > > >>>> mixture > > >>> > > >>>> of both? Not normally as the difference in performance is not that > > >>>>> > > >>>> large > > >>> > > >>>> compared to other considerations. What does matter is when an > > >>>>> > > >>>> expression > > >>> > > >>>> is > > >>>> > > >>>>> executed. If all the tokens in an expression are known it runs. > That > > is > > >>>>> true for both tacit and explicit expressions. So often tacit > > >>>>> > > >>>> expressions > > >>> > > >>>> are executed when encountered in a script, much like like > > preprocessing > > >>>>> > > >>>> in > > >>>> > > >>>>> C. > > >>>>> When the results of a tacit expression are assigned to a name it > has > > >>>>> executed. The results of the execution is defining a name. > > >>>>> > > >>>>> One interesting aspect of this is that interrupt handlers are > > explicit > > >>>>> definitions so there is an unknown token - the argument y. > > >>>>> > > >>>>> On Sat, Jan 21, 2017 at 6:05 AM, Jose Mario Quintana < > > >>>>> [email protected] <javascript:;>> wrote: > > >>>>> > > >>>>> Furthermore, if I show the verb, > > >>>>>> > > >>>>>> wiy > > >>>>>> 3 : '52+ +./"1 [ 4=weekday(1 1,:12 31),"0 1/~ y' > > >>>>>> > > >>>>>> there is no way to know if is tacit or not because I could have > > done, > > >>>>>> > > >>>>>> wiy=. 3 : '52+ +./"1 [ 4=weekday(1 1,:12 31),"0 1/~ y' > > >>>>>> > > >>>>>> or, > > >>>>>> > > >>>>>> wiy=. 'weeksinyear' f. > > >>>>>> > > >>>>>> Really? > > >>>>>> > > >>>>>> > > >>>>>> On Saturday, January 21, 2017, Raul Miller <[email protected] > > >>>>>>> > > >>>>>> <javascript:;>> > > >>> > > >>>> wrote: > > >>>> > > >>>>> Speaking of pedantic, (;:'weeksinyear')`:6 is presumably > explicit... > > >>>>>>> > > >>>>>>> Thanks, > > >>>>>>> > > >>>>>>> -- > > >>>>>>> Raul > > >>>>>>> > > >>>>>>> > > >>>>>>> On Fri, Jan 20, 2017 at 11:44 PM, Henry Rich < > [email protected] > > >>>>>>> > > >>>>>> <javascript:;> > > >>> > > >>>> <javascript:;>> wrote: > > >>>>>>> > > >>>>>>> Explicit entities are created by the (:) conjunction. Anything > > else > > >>>>>>>> > > >>>>>>> is > > >>>> > > >>>>> tacit. > > >>>>>>>> > > >>>>>>>> The distinction is notional. We all have little bits of tacit > > code > > >>>>>>>> > > >>>>>>> in > > >>> > > >>>> our > > >>>>>>> > > >>>>>>>> J lines: > > >>>>>>>> > > >>>>>>>> maxindex =: (i. >./) array > > >>>>>>>> > > >>>>>>>> the (i. >./) is a tiny tacit verb. If you gave it a name it > would > > >>>>>>>> > > >>>>>>> become > > >>>>>> > > >>>>>>> a named tacit verb. > > >>>>>>>> > > >>>>>>>> Sometimes the distinction seems pedantic: > > >>>>>>>> > > >>>>>>>> qverb =: 3 : 0"0 > > >>>>>>>> ... > > >>>>>>>> ) > > >>>>>>>> > > >>>>>>>> Is qverb tacit or explicit? > > >>>>>>>> > > >>>>>>>> Answer: tacit. It is not created by (:). It is created by ("). > > >>>>>>>> > > >>>>>>>> Henry Rich > > >>>>>>>> > > >>>>>>>> > > >>>>>>>> > > >>>>>>>> On 1/20/2017 9:39 PM, William Szuch wrote: > > >>>>>>>>> > > >>>>>>>>> Trying to understand when an explicit verb is used in a tacit > > >>>>>>>>> > > >>>>>>>> form. > > >>> > > >>>> For example if I define v1 which is in a tacit form - does not have > > >>>>>>>>> reference to arguments but contains the explicit verb rplc. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> v1 =: [: ". rplc&(LF;' ') > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> In this case what should v1 be called - an explicit of tacit > ?. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> v2 =: v1 f. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> If I now use f. to replace rplc in v1 then v2 is an explicit. > > >>>>>>>>> > > >>>>>>>>> The advantage of using f. is that if rplc has no public names > > then > > >>>>>>>>> > > >>>>>>>> v2 > > >>> > > >>>> has > > >>>>>>> > > >>>>>>>> no > > >>>>>>>>> public names. > > >>>>>>>>> > > >>>>>>>>> This can be useful is removing public names in a verb. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> Any comments to help with my understanding of tacits. > > >>>>>>>>> > > >>>>>>>>> > > >>>>>>>>> Regards > > >>>>>>>>> > > >>>>>>>>> Bill Szuch > > >>>>>>>>> > > >>>>>>>>> ------------------------------------------------------------ > > >>>>>>>>> > > >>>>>>>> ---------- > > >>>>>> > > >>>>>>> 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 > > >>> > > >>>> ------------------------------------------------------------ > > ---------- > > >>>>> For information about J forums see http://www.jsoftware.com/ > > forums.htm > > >>>>> > > >>>> ------------------------------------------------------------ > > ---------- > > >>>> For information about J forums see http://www.jsoftware.com/ > > forums.htm > > >>>> > > >>>> > > >>> > > >>> -- > > >>> > > >>> Devon McCormick, CFA > > >>> > > >>> Quantitative Consultant > > >>> ------------------------------------------------------------ > ---------- > > >>> 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
