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]> 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]> 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]> 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:;>> 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
