> I would say that (<,'"') is kosher and (<'"') not, already, based on > this interpretation of what Ye Dic meant. The implementation is
I am adopting your suggestion henceforth. > My vote would be that 'train' refers to any sequence of ARs and that > when `:6 said 'train of individual verbs' it meant to say 'the (possibly > derived) words created by executing the train of the (possibly derived) > words represented by each AR'. So, D0. m `: 6 Train Result is the train of individual verbs. would become (or be understood as), D1. m `: 6 Train Result is the (possibly derived) words created by executing the train of the (possibly derived) words represented by each AR. I have thought more about this and I am not quite sure about the wisdom of banning, eventually (when the negligence rather than benevolence stops), the boxed arrays of ARs currently supported by the interpreter. My perspective comes from the tacit adverbial programer's viewport which will try to explain next assuming that D1 is the law (i.e., henceforth kosher also implies compliance with D1). If the argument of (`:6) is a list of ARs of primary parts-of-speech, (`:6) produces the non-parenthesized (i.e., with the parsing rules implied parenthesization) train of the corresponding primary parts-of-the-speech. However, when its argument is boxed the interpreter's result is the train which is parenthesized accordingly, and this is not kosher. How can this extra illegal flexibility be important to a tacit adverbial programmer? Consider the following slight variation of my general-purpose generator of tacit adverbs (hg), o=. @: c=."_ ar=. 5!:1@:< d=. (a0=. `'') (a1=. (@:[) ((<,'&')`) (`:6)) (a2=. (`(<(":0);_)) (`:6)) av=. ((ar'a0')`) (`(ar'a1')) (`(ar'a2') ) (`:6) assert 1 4 9 -: 1 2 3 *: av The only change was replacing (<'&') by (<,'&') (this does not me too much). I think its construction and operation is kosher; ye, The Wise of J, be the judges. The last part of (hg)'s construction is unchanged, aw=. < o ((0;1;0)&{::) NB. Fetching the atomic representation d=. (a3=. (@: (aw f.)) ('av'f.)) (a4=. "_) (a5=. `:6) a6=. ((( ar'a4') ; ] ; ( ar'a3')"_) ('av'f.)) (`:6) hg=. `((ar'a6')`(ar'a5')) (`:6) Again, if I am not mistaken, (hg)'s construction is kosher. However, whether its operation is kosher, or not, depends on its controlling (tacit) verb argument. This verb operates on the AR of the argument of the generated adverb and, I believe, if (and only if) it produces the AR, or a list of AR(s), representing the desired product, then it is kosher. Two toy examples follow, one simple and another slightly more complicated. One can use (hg) to generate an adverb (a) which is meant to take a non-parenthesized train of two or more proverbs and produce the verb where (@:) is inserted between the proverbs, a=. ([ , (<,'@:') , ])/ o (((3 = ]) +. (_1 = ])) o (4!:0) # ]) o (<S:0) f.hg This tacit fixed adverb operates in a kosher manner, (v0 v1 v2 v3 v4 v5 v6)a v0@:v1@:v2@:v3@:v4@:v5@:v6 since the train produced is non-parenthesized. (If I am not mistaken.) In contrast, the following tacit fixed adverb (b) which generates an adverb that produces a train of adverbs by bonding accordingly its list of integers argument, an=. <@:((,'0') ,&:< ]) b=. (< o ((;:'&') , <) o an"0) o x: o (('';1)&{::) f.hg does not operate in a kosher manner (and eventually it will fail), _2 3 _1 b ((&_2x)(&3x))(&_1x) +_2 3 _1 b 0 1 3 4 5 6 _1 5 17 _31 65 _127 and its kosher counterpart would be more complicated (because of the produced train parenthesization) when one does not need any additional complications. (If I am not mistaken.) It might be due to trickery but this current behavior of the interpreter comes across as a very useful feature from this perspective. I see a benefit if it is preserved and I cannot see a disadvantage. Thus, assuming I am not missing something important, I would like to offer my two cents, D2. m `: 6 Train Result is the (possibly derived) words created by executing the train of the (possibly derived) words represented by each AR. If m is boxed, the boxed trains are parenthesized accordingly. which is the same as D2 plus a fragment which was taken, almost verbatim, from the (@.) entry. Igor Zhuravlov's 3-fork, for instance, is represented by, (<v3 ` v1 ` v4) ` v0 ` (<v4 ` v2 ` v5) ┌──────────┬──┬──────────┐ │┌──┬──┬──┐│v0│┌──┬──┬──┐│ ││v3│v1│v4││ ││v4│v2│v5││ │└──┴──┴──┘│ │└──┴──┴──┘│ └──────────┴──┴──────────┘ (<v3 ` v1 ` v4) ` v0 ` (<v4 ` v2 ` v5) (`:6) (v3 v1 v4) v0 v4 v2 v5 whereas, assuming D1, it is represented by (ye fill the blank), ... Either way, regardless of what is ultimately decided, I think, the (@.) and (`) entries should be modified accordingly (I do not know about the concept of gerund). ------------------------------------------------------------------------------ On Fri, Mar 13, 2020 at 11:40 AM Henry Rich <henryhr...@gmail.com> wrote: > > I think I agree. > > My vote would be that 'train' refers to any sequence of ARs and that > when `:6 said 'train of individual verbs' it meant to say 'the (possibly > derived) words created by executing the train of the (possibly derived) > words represented by each AR'. > > I would say that (<,'"') is kosher and (<'"') not, already, based on > this interpretation of what Ye Dic meant. The implementation is > permissive in some cases. > > Henry Rich > > On 3/12/2020 11:21 PM, Jose Mario Quintana wrote: > >> because the long sequence of ARs is not a valid AR. > > Certainly, the purpose of posing those questions was to find out where the > > permissiveness breaking point would be. This is what, I think, I have > > learned regarding the tie, train, and (left) agenda arguments in J (as > > described or might be described by the official documentation): lists of > > ARs of verbs are kosher, lists of ARs might become kosher; anything else is > > almost surely not kosher. Therefore, these are not kosher, > > > > (<'"') > > ┌─┐ > > │"│ > > └─┘ > > > > (<'"') (`:6) > > " > > (<'"') (@.0) > > " > > > > but these might become kosher, > > > > (<,'"') > > ┌─┐ > > │"│ > > └─┘ > > > > (<,'"') (`:6) > > " > > (<,'"') (@.0) > > " > > > > these are not kosher, > > > > ((<'"') ,~ (<;:'u@:v-v@:u')) > > ┌─────────────────┬─┐ > > │┌─┬──┬─┬─┬─┬──┬─┐│"│ > > ││u│@:│v│-│v│@:│u││ │ > > │└─┴──┴─┴─┴─┴──┴─┘│ │ > > └─────────────────┴─┘ > > > > ((<'"') ,~ (<;:'u@:v-v@:u')) (`:6) > > (u@:v - v@:u)" > > ((<'"') ,~ (<;:'u@:v-v@:u')) (@.0) > > u@:v - v@:u > > > > but these might become kosher, > > > > (<(<,'4'),<(<(<,'3'),<(<(<'@:'),<<;._1 ' u v'),(<,'-'),<(<'@:'),<<;._1 ' > > v u'),<,'"') > > ┌─────────────────────────────────────┐ > > │┌─┬─────────────────────────────────┐│ > > ││4│┌─────────────────────────────┬─┐││ > > ││ ││┌─┬─────────────────────────┐│"│││ > > ││ │││3│┌──────────┬─┬──────────┐││ │││ > > ││ │││ ││┌──┬─────┐│-│┌──┬─────┐│││ │││ > > ││ │││ │││@:│┌─┬─┐││ ││@:│┌─┬─┐││││ │││ > > ││ │││ │││ ││u│v│││ ││ ││v│u│││││ │││ > > ││ │││ │││ │└─┴─┘││ ││ │└─┴─┘││││ │││ > > ││ │││ ││└──┴─────┘│ │└──┴─────┘│││ │││ > > ││ │││ │└──────────┴─┴──────────┘││ │││ > > ││ ││└─┴─────────────────────────┘│ │││ > > ││ │└─────────────────────────────┴─┘││ > > │└─┴─────────────────────────────────┘│ > > └─────────────────────────────────────┘ > > (<(<,'4'),<(<(<,'3'),<(<(<'@:'),<<;._1 ' u v'),(<,'-'),<(<'@:'),<<;._1 ' > > v u'),<,'"')(`:6) > > (u@:v - v@:u)" > > (<(<,'4'),<(<(<,'3'),<(<(<'@:'),<<;._1 ' u v'),(<,'-'),<(<'@:'),<<;._1 ' > > v u'),<,'"')(@.0) > > (u@:v - v@:u)" > > > > There would tedious extra work involved when one wants to be kosher but it > > is doable. > > > > So far so good? > > > > > > On Wed, Mar 11, 2020 at 8:58 PM Henry Rich <henryhr...@gmail.com> wrote: > >> I would object to > >> > >> ((<'"') ,~ (<;:'u@:v-v@:u')) (`:6) > >> > >> because the long sequence of ARs is not a valid AR. This seems like an > >> interpreter artifact. > >> > >> The result of 5!:2 is not germane here, as it is not an AR. Your > >> examples using it also seem to be interpreter artifacts to me. > >> > >> Henry Rich > >> > >> On 3/11/2020 8:22 PM, Jose Mario Quintana wrote: > >>>> Of course the fact that m@.n allows certain forms does not imply that > >>>> m@.v would support similar forms. > >>> Of course. > >>> > >>>> I don't see anything to object to here. > >>> Great! This means tacit adverbs functioning as parameterized macros > > are, > >>> or might be eventually, legitimized. > >>>> There are gerunds and > > adverbs, > >>>> producing trains that evaluate properly. > >>> Right, the trains evaluate properly; even though the list (;:'@:-"') > >>> includes ARs of conjunctions (it is not my intention at all to argue > > with a > >>> /mufti/ of J, I am just accentuating). > >>> > >>>> By The Wise I mean the /ulama/ of J (neminem nominabo, genus hominum > >>>> significasse contentus) You know who you are. > >>> Train (`:6) can also evaluate properly forms associated with the > >>> corresponding agenda (m@.n) evaluation, mutatis mutandis; exempli > > gratia, > >>> ((<'"') ,~ (<;:'u@:v-v@:u')) > >>> ┌─────────────────┬─┐ > >>> │┌─┬──┬─┬─┬─┬──┬─┐│"│ > >>> ││u│@:│v│-│v│@:│u││ │ > >>> │└─┴──┴─┴─┴─┴──┴─┘│ │ > >>> └─────────────────┴─┘ > >>> > >>> ((<'"') ,~ (<;:'u@:v-v@:u')) (`:6) > >>> (u@:v - v@:u)" > >>> > >>> Do the /ulama/ of J (et alli) disapprove? > >>> > >>> By the way, some boxed representations belong to this class of forms, > >>> > >>> t=. (u@:v - v@:u)" > >>> > >>> (5!:2<'t') > >>> ┌─────────────────────┬─┐ > >>> │┌────────┬─┬────────┐│"│ > >>> ││┌─┬──┬─┐│-│┌─┬──┬─┐││ │ > >>> │││u│@:│v││ ││v│@:│u│││ │ > >>> ││└─┴──┴─┘│ │└─┴──┴─┘││ │ > >>> │└────────┴─┴────────┘│ │ > >>> └─────────────────────┴─┘ > >>> (5!:2<'t') (`:6) > >>> (u@:v - v@:u)" > >>> > >>> but not all of them, > >>> > >>> t=. "1 > >>> > >>> (5!:2<'t') > >>> ┌─┬─┐ > >>> │"│1│ > >>> └─┴─┘ > >>> > >>> (5!:2<'t') (`:6) > >>> |domain error > >>> | (5!:2<'t') (`:6) > >>> > >>> The issue here is the missing (in the evaluation sense) AR of 1, > >>> > >>> (<,'"'),<<(,'0');1 > >>> ┌─┬───────┐ > >>> │"│┌─────┐│ > >>> │ ││┌─┬─┐││ > >>> │ │││0│1│││ > >>> │ ││└─┴─┘││ > >>> │ │└─────┘│ > >>> └─┴───────┘ > >>> ((<,'"'),<<(,'0');1) (`:6) > >>> "1 > >>> > >>> > >>> On Tue, Mar 10, 2020 at 11:49 PM Henry Rich <henryhr...@gmail.com> > > wrote: > >>>> I don't see anything to object to here. There are gerunds and adverbs, > >>>> producing trains that evaluate properly. > >>>> > >>>> > >>>> By The Wise I mean the /ulama/ of J (neminem nominabo, genus hominum > >>>> significasse contentus) You know who you are. > >>>> > >>>> Henry Rich > >>>> > >>>> On 3/10/2020 11:34 PM, Jose Mario Quintana wrote: > >>>>>> I don't think it's illegal. The spec (Ye Dic, here) is incomplete. > > It > >>>>> That is good to know. > >>>>> > >>>>>> I don't see anything bad coming from executing a train containing > >>>>>> non-verbs; so I would vote to expand the spec to include all trains. > >>>>> I do not see anything bag coming either, on the contrary. > >>>>> > >>>>>> There would need to be discussion among The Wise before any such > >>> change. > >>>>> May I offer some food for thought to The Wise? > >>>>> > >>>>> I would expect that whatever is decided regarding the legality in J > >>> about > >>>>> the train's (`:6) arguments would, or should, affect its capable > >>> relative, > >>>>> agenda (@.), specifically the m@.n form; for instance, do The Wise, or > >>> you, > >>>>> in particular, think that the following sentences, supported by j901, > >>> are > >>>>> legal or illegal in J? > >>>>> > >>>>> a=. (`(;:'@:-"'))(@.(4 ;~ (<0 2 1 3 1 2 0))) > >>>>> > >>>>> u`v a > >>>>> (u@:v - v@:u)" > >>>>> > >>>>> _1 *:`(+/) a i. 2 3 4 > >>>>> 64 118 184 262 > >>>>> 1504 1702 1912 2134 > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> On Tue, Mar 10, 2020 at 10:09 AM Henry Rich <henryhr...@gmail.com> > >>> wrote: > >>>>>> I don't think it's illegal. The spec (Ye Dic, here) is incomplete. > > It > >>>>>> says what will be done if there is a verb train but is silent about > >>>>>> other trains. > >>>>>> > >>>>>> What the implementation does is accept any train and evaluate it. > >>>>>> Thinking about it I don't see anything else you could do with a > > train; > >>> & > >>>>>> I don't see anything bad coming from executing a train containing > >>>>>> non-verbs; so I would vote to expand the spec to include all trains. > >>>>>> > >>>>>> There would need to be discussion among The Wise before any such > >>> change. > >>>>>> Henry Rich > >>>>>> > >>>>>> On 3/9/2020 11:36 PM, Jose Mario Quintana wrote: > >>>>>>> Henry wrote: > >>>>>>> > >>>>>>>> Ye Dic mentions only verb trains under `: . > >>>>>>> Therefore, the sentence ((<,'"') ` (an 1) (`:6)) is illegal in J > >>>>> because "1 > >>>>>>> is not a train of verbs (even if it is supported by j). Correct? > >>> (This > >>>>> is > >>>>>>> not a rhetorical question.) > >>>>>>> > >>>>>> -- > >>>>>> This email has been checked for viruses by AVG. > >>>>>> https://www.avg.com > >>>>>> > > ---------------------------------------------------------------------- > >>>>>> For information about J forums see > > http://www.jsoftware.com/forums.htm > >>>>> ---------------------------------------------------------------------- > >>>>> For information about J forums see http://www.jsoftware.com/forums.htm > >>>> -- > >>>> This email has been checked for viruses by AVG. > >>>> https://www.avg.com > >>>> > >>>> ---------------------------------------------------------------------- > >>>> For information about J forums see http://www.jsoftware.com/forums.htm > >>> ---------------------------------------------------------------------- > >>> For information about J forums see http://www.jsoftware.com/forums.htm > >> > >> -- > >> This email has been checked for viruses by AVG. > >> https://www.avg.com > >> > >> ---------------------------------------------------------------------- > >> For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > -- > This email has been checked for viruses by AVG. > https://www.avg.com > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm