Currently `:6 has a high tolerance for each, but there is a distinction between
conjunctions and "compositions" in your example
( + ar , < +ar, -ar) `:6
+ (+ -)
('@' aar , < +ar, -ar)`:6
@(+ -)
(< '@' aar , < +ar, -ar)`:6
+@-
(< '@' aar , < +ar, -ar) -: +@- ar
1
You are suggesting that a list of ARs be construed as a valid AR. I
agree with the goal. I worry that the encoding is not reversible.
+---------+
|+-+-----+|
||f|+-+-+||
|| ||g|h|||
|| |+-+-+||
|+-+-----+|
+---------+
Is this (f (g h)) (as it must be if f is a verb)
or (g f h) (if f is a conjunction)?
I don't like having to parse the ARs to figure out how to interpret them.
Henry Rich
On 3/16/2020 10:18 PM, Jose Mario Quintana wrote:
>> 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 <[email protected]> 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 <[email protected]> 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 [email protected] allows certain forms does not imply that
>>>>>> [email protected] 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 ([email protected]) 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 <[email protected]>
>>> 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 [email protected] 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 <[email protected]>
>>>>> 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
--
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