Linda, http://www.cs.trinity.edu/About/The_Courses/cs2322/jdoc/dict/dictf.htm seems to be substantially the same.
I have not proofread the two for differences, but at worst they look like they would be different early versions of the dictionary. Thanks, -- Raul On Fri, Oct 13, 2017 at 9:50 AM, Linda Alvord <[email protected]> wrote: > Bill, Could you make a copy of just page 80? When I printed it it is > impossible to read the final column in the curve of the page. > > Thanks, Linda > > -----Original Message----- > From: Programming [mailto:[email protected]] On Behalf > Of bill lam > Sent: Thursday, October 12, 2017 10:12 PM > To: Programming forum <[email protected]> > Subject: Re: [Jprogramming] Jx 1.1 Release > > Raul is correct, as usual. The train N V N was not handled in the rule for > trident. Here is the previous pages for execution stack and trains. Monad and > dyad were checked in the first 3 rules. Rules for trident and bident were > near the bottom. > https://i.imgur.com/2a3mBFS.jpg > > > On Oct 13, 2017 8:28 AM, "Raul Miller" <[email protected]> wrote: > >> Ah, it's from http://www.cs.trinity.edu/About/The_Courses/cs2322/jdoc/ >> dict/dictf.htm >> >> (Bill's link did not claim that that example was a trident, as near as >> I can tell.) >> >> That said, I stand by my assertion that J would not treat (N V N) as a >> trident. >> >> Thanks, >> >> -- >> Raul >> >> >> On Thu, Oct 12, 2017 at 6:20 PM, Jose Mario Quintana >> <[email protected]> wrote: >> > That is not "my" list, check carefully Dan Bron's PS in the first >> > link I provided or Bill's link earlier in this thread. >> > >> > On Thu, Oct 12, 2017 at 6:02 PM, Raul Miller <[email protected]> >> wrote: >> > >> >> Some of your list of "all possible tridents and bidents" would only >> >> be possible if other parsing rules were removed or evaded (monad, >> >> dyad, adverb, conjunction). >> >> >> >> For example, the first one you list: >> >> N0 V1 N2 noun x V1 y >> >> >> >> This would typically be a dyad, and I cannot think of any way for >> >> it to be treated as a triad (it's true, of course, that when you >> >> modify the interpreter it's true that you can alter it in any way >> >> you see fit >> >> - but it's difficult to think of this result as being J). >> >> >> >> Was that your intent, or am I missing something? >> >> >> >> (Or... if you really meant to be discussing not "J" but more "a >> >> topic which might interest some people in the J community", >> >> shouldn't this kind of discussion go on in a different forum? >> >> Perhaps chat?) >> >> >> >> Thanks, >> >> >> >> -- >> >> Raul >> >> >> >> On Thu, Oct 12, 2017 at 5:48 PM, Jose Mario Quintana >> >> <[email protected]> wrote: >> >> > A common goal of the Jx trains and many of the Jx primitives and >> foreign >> >> > conjunction entities is to lift J's draconian (tacit) >> >> > function-level restrictions. Jx facilitates tacit verbs, >> >> > adverbs, and conjunctions >> to >> >> act >> >> > on nouns, verbs, adverbs and, conjunctions and produce nouns, >> >> > verbs, adverbs and, conjunctions. That is, almost any >> >> type >> >> > entity can act on any type entity to produce any type entity. >> >> > >> >> > The Jx trains are either completely new or extended >> >> > implementations of current or former trains. The Jx trains >> >> > conform to the general >> scheme of >> >> > the Parse Table shown on page 2 of the Cheatsheet and the only >> difference >> >> > vs the current J Parse Table is the Trident parsing entry. >> >> > >> >> > This extra entry might have a potential negative effect in Jx's >> >> performance >> >> > vs J; after all, that was one of the reasons given for dropping >> >> > the >> >> Trains >> >> > of the Golden Age (for reference I am including, at the end of >> >> > this >> >> post, a >> >> > text version which most likely matches the one in the link that >> >> > Bill provided earlier). How important is the performance >> >> > penalty? I >> would be >> >> > surprised if it is significant; one could try to quantify it >> >> > although >> the >> >> > usual caveats would apply (e.g., repeat the experiments several >> >> > times >> to >> >> > confirm results). >> >> > >> >> > First, a few useful definitions follow to facilitate the >> >> > discussion, >> >> > >> >> > o=. @: >> >> > 'adv conj ver'=. _1 _2 _3 <@?: 0 >> >> > fix=. f. ver NB. (a v) form >> >> > >> >> > >> >> > a v <-> v(a) >> >> > >> >> > This form is non-compliant; thus, it is intrinsic only to Jx. >> >> > One can >> >> use >> >> > this form, for instance, to produce easily arrays with single or >> multiple >> >> > boxed adverb arguments and verbs (or adverbs or conjunctions) can >> >> > act >> on >> >> > the array. For example, a single boxed adverb, >> >> > >> >> > /< >> >> > ┌─┐ >> >> > │/│ >> >> > └─┘ >> >> > >> >> > and multiple boxed adverbs, >> >> > >> >> > [:(/\<) (items < o fix o ":) (table < o fix o ":)]: >> >> > ┌──┬───┬──────────────────────────────────────────────────── >> ──────────┐ >> >> > │/\│"_1│1 : (':'; '(((#~LF-.@e.])5!:5<''u'');,.y),.({.;}.)":x,y >> u/x')~│ >> >> > └──┴───┴──────────────────────────────────────────────────── >> ──────────┘ >> >> > >> >> > This form also helps to avoid quoting adverbs. Apart from >> >> > aesthetical effects (my aesthetics anyway), it allows the verb >> >> > xi, which I have mentioned before, to refer directly to an adverb >> >> > (or adverbs) within a sentence. >> >> > >> >> > >> >> > x (a a) <-> (x a) a >> >> > >> >> > This form corresponds to the entry >> >> > >> >> > A0 A1 adv (x A0) A1 >> >> > >> >> > of the Parse Table of the Golden Age. To my knowledge, it has >> >> > not >> been >> >> > fully implemented before. Currently, J only works if the product >> >> > of >> (x >> >> a) >> >> > is a noun or a verb (there have been discussions about producing >> >> > the >> >> train >> >> > if the product of (x a) is an adverb. Jx implements that and >> >> > also the >> >> case >> >> > when the product of (x a) is a conjunction. This is very useful >> >> > when writing tacit adverbs as a train of adverbs: if ((x a) a) >> >> > produces the desired product then the adverb (a a) would work >> >> > because (x (a a) <-> >> (x >> >> a) >> >> > a). For example, >> >> > >> >> > 'items' ((~ver) adv) / >> >> > items/ >> >> > 'items' (((~ver) adv) /) >> >> > items/ >> >> > >> >> > 'items' ('x~' (adverb :)) / >> >> > items/ >> >> > 'items' (('x~' (adverb :)) \) items\ >> >> > >> >> > The last line produces instead a syntax error in J. >> >> > >> >> > >> >> > a c <-> (c)a >> >> > >> >> > This form is non-compliant; thus, it is also intrinsic only to Jx. >> Its >> >> > motivation parallels the one for the form (a v <-> v(a)). For >> >> example, a >> >> > single boxed conjunction, >> >> > >> >> > <adv (`/) >> >> > ┌───┐ >> >> > │` /│ >> >> > └───┘ >> >> > >> >> > and multiple boxed conjunctions, >> >> > >> >> > [:(<adv") (< o fix o ": adv bind)]: >> >> > ┌─┬─────────────┐ >> >> > │"│2 : 'x@(y"_)'│ >> >> > └─┴─────────────┘ >> >> > >> >> > >> >> > The Jx extensions of the corresponding Golden age entries, >> >> > >> >> > x (c a) y <-> x c y a : C0 A1 conj (x C0 y) A1 >> >> > x (a c a) y <-> (x a) c (y a) : A0 C1 A2 conj (x A0) C1 (y >> >> > A2) >> >> > >> >> > deserve, in my opinion, a separate thread. I will try to start >> >> > one >> >> during >> >> > the weekend (time permitting). Succinctly, the two trains (the >> >> > first >> >> one, >> >> > in particular) are powerful enough that if they were restored in >> >> official J >> >> > interpreters then conjunctional tacit programming would be >> >> > virtually complete as opposed to impossible. >> >> > >> >> > I hope it helps, >> >> > >> >> > PS. I wish I had more time to read and respond to posts more >> frequently; >> >> > however, most of the time, I eventually respond if I feel I can >> >> > still contribute. Thank you for your patience. >> >> > >> >> > >> >> > Train Table of the Golden Age >> >> > >> >> > (see, >> >> > http://www.jsoftware.com/pipermail/programming/2009- >> December/017146.html >> >> > and http://www.jsoftware.com/pipermail/programming/2009- >> >> December/017145.html >> >> > ) >> >> > >> >> > The following tables define all possible tridents and bidents, >> >> > using italics to denote the optional left arguments of (ambivalent) >> >> > verbs: >> >> > >> >> > N0 V1 N2 noun x V1 y >> >> > V0 V1 V2 verb (x V0 y) V1 (x V2 y) >> >> > V0 V1 C2 conj V0 V1 (x C2 y) >> >> > A0 V1 V2 adv (x A0) V1 V2 >> >> > C0 V1 V2 conj (x C0 y) V1 V2 >> >> > C0 V1 C2 conj (x C0 y) V1 (x C2 y) >> >> > A0 A1 V2 conj (x A0) (y A1) V2 >> >> > A0 A1 A2 adv ((x A0) A1) A2 >> >> > C0 A1 A2 conj ((x C0 y) A1) A2 >> >> > N0 C1 N2 verb x (N0 C1 N2) y >> >> > N0 C1 V2 verb x (N0 C1 V2) y >> >> > N0 C1 A2 adv N0 C1 (x A2) >> >> > N0 C1 C2 conj N0 C1 (x C2 y) >> >> > V0 C1 N2 verb x (V0 C1 N2) y >> >> > V0 C1 V2 verb x (V0 C1 V2) y >> >> > V0 C1 A2 adv V0 C1 (x A2) >> >> > V0 C1 C2 conj V0 C1 (x C2 y) >> >> > A0 C1 N2 adv (x A0) C1 N2 >> >> > A0 C1 V2 adv (x A0) C1 V2 >> >> > A0 C1 A2 conj (x A0) C1 (y A2) >> >> > A0 C1 C2 conj (x A0) C1 (x C2 y) >> >> > C0 C1 N2 conj (x C0 y) C1 N2 >> >> > C0 C1 V2 conj (x C0 y) C1 V2 >> >> > C0 C1 A2 conj (x C0 y) C1 (y A2) >> >> > C0 C1 C2 conj (x C0 y) C1 (x C2 y) >> >> > N0 A1 verb x (N0 A1) y >> >> > N0 C1 adv N0 C1 x >> >> > V0 N1 noun V0 y >> >> > V0 V1 verb x (or y) V0 V1 y >> >> > V0 A1 verb x (V0 A1) y >> >> > V0 C1 adv V0 C1 x >> >> > A0 V1 adv (x A0) V1 >> >> > A0 A1 adv (x A0) A1 >> >> > A0 C1 adv (x A0) C1 x >> >> > C0 N1 adv x C0 N1 >> >> > C0 V1 adv x C0 V1 >> >> > C0 A1 conj (x C0 y) A1 >> >> > >> >> > >> >> > On Thu, Oct 12, 2017 at 3:51 AM, Erling Hellenäs < >> >> [email protected]> >> >> > wrote: >> >> > >> >> >> Hi all ! >> >> >> >> >> >> I have a hard time finding the new rules among these old rules. >> >> >> >> >> >> While in the Jx description x and y denotes verbs, in Ken >> >> >> Iversons description they denote nouns? >> >> >> >> >> >> Take the bident a0 v1. According to Ken Iverson it should be >> >> >> parsed >> as >> >> (x >> >> >> a0) v1, while in Jx, using the same notation, it is parsed as >> >> >> (v1 >> a0) y >> >> ? >> >> >> >> >> >> Does Jx represent a new way of thinking about how these trains >> >> >> should >> >> be >> >> >> parsed, which Ken Iverson did not have? >> >> >> >> >> >> Cheers, >> >> >> >> >> >> Erling Hellenäs >> >> >> >> >> >> >> >> >> >> >> >> Den 2017-10-12 kl. 04:09, skrev bill lam: >> >> >> >> >> >>> As mentioned earlier, ancient J had a more complete set of >> >> >>> rules for tridents and bidents. This is what availbale in J >> >> >>> circa 1994 (23 years ago) >> >> >>> >> >> >>> https://i.imgur.com/OtBZZq1.jpg >> >> >>> >> >> >>> In the good old days, adverbs and conjunctions can be written >> >> >>> without explicit definitions, albeit only very few can manage >> >> >>> to do that. >> >> >>> >> >> >>> Ср, 11 окт 2017, Erling Hellenäs написал(а): >> >> >>> >> >> >>>> Hi all! >> >> >>>> >> >> >>>> I finally managed to understand Cloak. I then with interest >> >> >>>> studied >> >> these >> >> >>>> new syntax rules: >> >> >>>> >> >> >>>> av ↔ v(a) >> >> >>>> x(a a) ↔ (x a) a >> >> >>>> ac ↔ (c)a >> >> >>>> x(c a) y ↔ x c y a >> >> >>>> x(a c a) y ↔ (x a) c (y a) >> >> >>>> >> >> >>>> It all seemed logical and nice. I just wonder about the >> >> >>>> thoughts >> >> behind. >> >> >>>> What is the logic behind these rules? >> >> >>>> >> >> >>>> I also wonder if there are any negative effects of having >> >> >>>> these >> rules. >> >> >>>> >> >> >>>> Cheers, >> >> >>>> >> >> >>>> Erling Hellenäs >> >> >>>> >> >> >>>> >> >> >>>> >> >> >>>> On 2017-09-30 23:27, Jose Mario Quintana wrote: >> >> >>>> >> >> >>>>> Jx 1.1 Release >> >> >>>>> >> >> >>>>> A Jx v1.1 Extensions Guide, a J/Jx Cheatsheet, a Jx >> >> >>>>> Assertions >> script >> >> >>>>> together with links to a Windows 64 bit dll, a Unix 64 bit so >> >> binaries >> >> >>>>> (without avx support) and the patch corresponding to the J806 >> source >> >> >>>>> (beta-6) can be found at the link [0]. >> >> >>>>> >> >> >>>>> Summary >> >> >>>>> >> >> >>>>> - Primitives >> >> >>>>> Added =.. =:: $:: [. ]. ]: ".. `. &:.(*) ?:(*) i.. O. >> >> >>>>> Extended ~ $. >> >> >>>>> Modified " (*) >> >> >>>>> >> >> >>>>> - Foreign >> >> >>>>> Added 104!:5 Unnamed Execution 102!:0/1 In-place >> >> >>>>> Amend/Append (*) >> >> >>>>> >> >> >>>>> - Trains >> >> >>>>> a v Added >> >> >>>>> a a Extended >> >> >>>>> c a Resurrected and extended (*) >> >> >>>>> a c a Resurrected and extended (*) >> >> >>>>> >> >> >>>>> - Spelling >> >> >>>>> Names with Unicode characters >> >> >>>>> >> >> >>>>> (*) New Jx 1.1 feature >> >> >>>>> >> >> >>>>> This release introduces a modified primitive (") and, in >> >> >>>>> theory, >> for >> >> the >> >> >>>>> first time an incompatibility vs the official J counterpart >> >> >>>>> (J806 >> >> >>>>> beta-6) ; >> >> >>>>> however, in practice, it is highly unlikely to break any >> >> >>>>> existent >> >> code >> >> >>>>> and >> >> >>>>> doubters have an opportunity to test their code. >> >> >>>>> >> >> >>>>> This is a simple 1-decade-old example [1], >> >> >>>>> >> >> >>>>> ]`|."1 i.5 6 >> >> >>>>> 0 1 2 3 4 5 >> >> >>>>> 11 10 9 8 7 6 >> >> >>>>> 12 13 14 15 16 17 >> >> >>>>> 23 22 21 20 19 18 >> >> >>>>> 24 25 26 27 28 29 >> >> >>>>> >> >> >>>>> See also the threads [2, 3] for recent discussions. >> >> >>>>> >> >> >>>>> The rank of the verb ?: has been changed to 0 0 0 to make it >> easier >> >> to >> >> >>>>> use. >> >> >>>>> >> >> >>>>> Three venerable facilities are released: >> >> >>>>> >> >> >>>>> - The conjunction (&:.), for the motivation, see the post [4] >> >> >>>>> (see >> >> also >> >> >>>>> the >> >> >>>>> post [5] both, its reference and the embedded discussion for >> similar >> >> >>>>> more >> >> >>>>> recent ideas). >> >> >>>>> >> >> >>>>> - 102!:0/1 In-place Amend/Append, be very careful (see [6]); >> >> >>>>> if >> you >> >> do >> >> >>>>> not >> >> >>>>> know what to expect, play with their corresponding models instead. >> >> >>>>> >> >> >>>>> PS. There are a couple of other goodies which will be >> >> >>>>> documented >> >> later. >> >> >>>>> >> >> >>>>> >> >> >>>>> References >> >> >>>>> >> >> >>>>> [0] Jx 1.1 Release >> >> >>>>> http://www.2bestsystems.com/foundation/j/jx1.1 >> >> >>>>> >> >> >>>>> [1] [Jprogramming] zig-zag order Oleg Kobchenko >> >> >>>>> http://www.jsoftware.com/pipermail/programming/2006- >> November >> >> >>>>> /004188.htm >> >> >>>>> >> >> >>>>> [2] [Jprogramming] How m"n shoulda been defined Henry Rich >> >> >>>>> http://www.jsoftware.com/pipermail/programming/2015- >> August/0 >> >> >>>>> 42512.html >> >> >>>>> >> >> >>>>> [3] [Jprogramming] Jx version 1.0 release Henry Rich >> >> >>>>> http://www.jsoftware.com/pipermail/programming/2017- >> August/0 >> >> >>>>> 48124.html >> >> >>>>> >> >> >>>>> [4] [Jforum] Wasted intermediate values Jose Mario Quintana >> >> >>>>> http://www.jsoftware.com/pipermail/general/2003-March/ >> >> 014488.html >> >> >>>>> >> >> >>>>> [5] [Jprogramming] Fold/reduce with initial value? R.E. Boss >> >> >>>>> http://www.jsoftware.com/pipermail/programming/2015- >> February >> >> >>>>> /041015.html >> >> >>>>> >> >> >>>>> [6] [Jprogramming] Tacit J and indexed replacement Jose >> >> >>>>> Mario >> >> Quintana >> >> >>>>> http://www.jsoftware.com/pipermail/programming/2014- >> July/038 >> >> >>>>> 515.html >> >> >>>>> ------------------------------------------------------------ >> >> ---------- >> >> >>>>> 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 >> ---------------------------------------------------------------------- >> 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
