If you subscribe to the chat forum (perhaps after Jx v1.1 is released), and remind me of the questions you raise here, I will be happy to continue this discussion there.
Thanks, -- Raul On Mon, Aug 21, 2017 at 11:24 AM, Jose Mario Quintana <jose.mario.quint...@gmail.com> wrote: >> Won't this destroy adverb trains? > > I do not think so. I am not aware of any J adverb train destroyed by a Jx > v1.1 interpreter. > >> >> On Fri, Aug 18, 2017 at 6:04 PM, Jose Mario Quintana >> <jose.mario.quintana at gmail.com> wrote: >> > Jx version 1.1, not yet released, allows adverbs and conjunctions to > act on >> > boxed verbs, adverbs and conjunctions (see [0] for the motivation), >> >> A train is a deferred action syntactic construct. > > Remember, arrays of boxed verbs, adverbs and conjunctions are nouns; > furthermore, as far as a Jx v1.1 interpreter is concerned they are also > gerunds. > > Incidentally, is > > (%:3) * ] > 1.7320508075688772 * ] > > "a deferred action syntactic construct"? > > Also, is > > v"(<:1) > v"0 > > "a deferred action syntactic construct"? > >> >> It seems to me that by preventing the deferral you prevent the train >> from forming. >> >> (Put differently: since Jx is drifting away from J programming, > > On the contrary, Jx extends J but Jx is firmly tied to J. > >> perhaps we should also move this kind of discussion to the chat >> forum?) > > I do not subscribe to the chat forum. Perhaps we should postpone this kind > of discussion until Jx v1.1 is released? > >> >> Thanks, >> >> -- >> Raul > > > > On Fri, Aug 18, 2017 at 11:54 PM, Raul Miller <rauldmil...@gmail.com> wrote: > >> Won't this destroy adverb trains? >> >> On Fri, Aug 18, 2017 at 6:04 PM, Jose Mario Quintana >> <jose.mario.quint...@gmail.com> wrote: >> > Jx version 1.1, not yet released, allows adverbs and conjunctions to act >> on >> > boxed verbs, adverbs and conjunctions (see [0] for the motivation), >> >> A train is a deferred action syntactic construct. >> >> It seems to me that by preventing the deferral you prevent the train >> from forming. >> >> (Put differently: since Jx is drifting away from J programming, >> perhaps we should also move this kind of discussion to the chat >> forum?) >> >> Thanks, >> >> -- >> Raul >> >> On Fri, Aug 18, 2017 at 10:44 PM, Jose Mario Quintana >> <jose.mario.quint...@gmail.com> wrote: >> > What is "this"? >> > >> > On Fri, Aug 18, 2017 at 8:52 PM, Raul Miller <rauldmil...@gmail.com> >> wrote: >> > >> >> Won't this destroy adverb trains? >> >> >> >> Thanks, >> >> >> >> -- >> >> Raul >> >> >> >> >> >> On Fri, Aug 18, 2017 at 6:04 PM, Jose Mario Quintana >> >> <jose.mario.quint...@gmail.com> wrote: >> >> > Inline comments follow... >> >> > >> >> >> Hi all ! >> >> >> >> >> >> I tried out the functionality of Jx and got some problems. >> >> >> I expected these two expressions to be equivalent, but got syntax >> error >> >> >> on the second. >> >> >> >> >> >> +(".. '/') 1 2 3 >> >> >> 6 >> >> >> +(".. [: / ]:) 1 2 3 >> >> > >> >> > One issue is that ]: is an adverb and adverbs can only act on nouns >> and >> >> > verbs. Adverbs and conjunctions must be provided as atomic >> >> representations >> >> > or equivalent. The current documentation is incomplete and will be >> >> fixed; >> >> > thank you for noticing this problem. >> >> > >> >> > To wit, the adverb can be boxed using ]: as follows, >> >> > >> >> > an=. <@:((":0) ,&< ]) NB. Atomizing a noun (or verb, adverb or >> >> > conjunction) >> >> > >> >> > [: (/an) ]: NB. (/an) is the Jx train (a v) >> >> > ┌─┐ >> >> > │/│ >> >> > └─┘ >> >> > >> >> > or, >> >> > >> >> > [: (/("..inv)) ]: >> >> > ┌─┐ >> >> > │/│ >> >> > └─┘ >> >> > >> >> > ([: (/("..inv)) ]:) -: (([: (/an) ]:)) >> >> > 1 >> >> > >> >> > A single / can be boxed directly as well, >> >> > >> >> > /< >> >> > ┌─┐ >> >> > │/│ >> >> > └─┘ >> >> > >> >> > (/<) -: ([: (/("..inv)) ]:) >> >> > 1 >> >> > >> >> > Another issue is that evoke (`:6), and consequently ".. , does not >> act >> >> on >> >> > boxed adverbs, >> >> > >> >> > ".. (/<) >> >> > |domain error >> >> > | "..(/<) >> >> > (/<) (`:6) >> >> > |domain error >> >> > | (/<)(`:6) >> >> > >> >> > So, one has to write, for instance, >> >> > >> >> > +(".. (/an)) 1 2 3 >> >> > 6 >> >> > >> >> > Jx version 1.1, not yet released, allows adverbs and conjunctions to >> act >> >> on >> >> > boxed verbs, adverbs and conjunctions (see [0] for the motivation), >> >> > >> >> > JVERSION >> >> > Installer: j602a_win.exe >> >> > Engine: j806/j64/windows/beta/BEST/Jx/2017-08-15T16:31:59 >> >> > Library: 6.02.023 >> >> > >> >> > +(".. (/<)) 1 2 3 >> >> > 6 >> >> > >> >> > >> >> >> |syntax error >> >> >> | +("..[:/]:)1 2 3 >> >> >> >> >> >> I had problems with Knot until I recognized that it is `. and not >> `: as >> >> >> the description says. >> >> >> >> >> >> "|`:|Knot (Gerund) – is similar to the J primitive|`|(tie) except >> that >> >> a >> >> >> non-boxed noun argument is first replaced by its atomic >> >> representation." >> >> >> >> >> >> +`.1 >> >> >> >> >> >> ┌─┬─────┐ >> >> >> │+│┌─┬─┐│ >> >> >> │ ││0│1││ >> >> >> │ │└─┴─┘│ >> >> >> └─┴─────┘ >> >> >> >> >> > >> >> > >> >> > Right, the documentation will be fixed; thank you for the feedback. >> >> > >> >> > >> >> >> I had problems with Cloak. I managed to use it but didn't understand >> >> >> what it is for. >> >> >> >> >> >> AtDot=: 2 : (':';'[ v^:_1 u at v') >> >> >> >> >> >> 1 0 1 -AtDot# 4 5 6 >> >> >> >> >> >> _4 0 _6 >> >> >> >> >> >> 1 0 1 -(2 ?: 5!:1<'AtDot')# 4 5 6 >> >> >> >> >> >> _4 0 _6 >> >> >> >> >> >> >> >> >> The example gives syntax error. Missing parenthesis. >> >> >> >> >> >> (;:'ver conj adv')=. _3 _2 _1<@?:"0) 0 >> >> >> >> >> >> |syntax error >> >> >> >> >> >> | (;:'ver conj adv')=: _3 _2 _1<@?:"0)0 >> >> >> >> >> >> (;:'ver conj adv')=. _3 _2 _1<@?:("0) 0 >> >> > >> >> > Right, I used this properly in the Appendix of my post [1] but >> somehow a >> >> > parenthesis got missing in the documentation; it will be fixed. >> >> > >> >> >> >> >> >> ver >> >> >> >> >> >> (_3?:0) >> >> >> >> >> >> conj >> >> >> >> >> >> (_2?:0) >> >> >> >> >> >> adv >> >> >> >> >> >> (_1?:0) >> >> >> >> >> >> >> >> >> I guess you can use Jx to define adverbs and conjunctions in tacit >> >> code, >> >> >> but I didn't understand how. >> >> >> >> >> > >> >> > The verb ver verbs adverbs (as monadic verbs) and conjunctions (as >> >> dyadic >> >> > verbs), conj and adv are the reverse operations (i.e., adv >> adverbs a >> >> > monadic verb and conj conjuncts a dyadic verb) so to speak. This >> might >> >> > help to clarify the concepts a little, >> >> > >> >> > u (/ver)adv NB. (/ver) is an (a v) Jx train >> >> > u/ >> >> > >> >> > u (ver(<'/'))adv NB. ver acting on an atomic representation >> >> > u/ >> >> > >> >> > u ((ver adv)@:)conj v NB. ((ver adv)@:) is an (a c) Jx train >> >> > u@:v >> >> > >> >> > u (ver(<'@:'))conj v NB. ver acting on an atomic representation >> >> > u@:v >> >> > >> >> > You got it right, adv and conj allows one to write any arbitrary >> >> tacit >> >> > adverbs and conjunctions by reducing those to writing tacit verbs >> >> (i.e., u >> >> > adv and v conj where u is monadic verb and v is dyadic verb). >> >> > >> >> > What makes it easy is the fact that primitive nonnumerical verbs are >> >> > higher-order functions (i.e., able to act on nouns verbs adverbs and >> >> > conjunctions, or produce nouns verbs adverbs and conjunctions, or both >> >> but >> >> > the official interpreters makes it almost impossible to use them as >> such; >> >> > Jx makes it easy). >> >> > >> >> > For example, >> >> > >> >> > toj ": adv >> >> > toj >> >> > $ (toj ": adv) >> >> > 3 >> >> > fix=. f.ver >> >> > >> >> > toJ ":@:fix adv >> >> > ((10{a.) I.@(e.&(13{a.))@]} ])@:(#~ -.@((13 10{a.)&E.@,)) >> >> > $(toJ ":@:fix adv) >> >> > 57 >> >> > u (,&:<)conj v NB. Boxing u and v >> >> > ┌─┬─┐ >> >> > │u│v│ >> >> > └─┴─┘ >> >> > $(u (,&:<)conj v) >> >> > 2 >> >> > >> >> > dex=. ]conj >> >> > >> >> > type'dex' >> >> > ┌───────────┐ >> >> > │conjunction│ >> >> > └───────────┘ >> >> > >> >> > >> >> > + dex - >> >> > - >> >> > >> >> > lev=. [conj >> >> > >> >> > + lev - >> >> > + >> >> > >> >> > You might like to check also the Appendix I mentioned for more >> examples. >> >> > >> >> >> >> >> >> Cheers, >> >> >> >> >> >> Erling >> >> > >> >> > I really appreciate your interest and patience. >> >> > >> >> > >> >> > References >> >> > >> >> > [0] [Jprogramming] Boxed verbs as alternate gerunds Jose Mario >> Quintana >> >> > http://www.jsoftware.com/pipermail/programming/2017- >> >> August/048145.html >> >> > >> >> > [1] [Jprogramming] Jx version 1.0 release Jose Mario Quintana >> >> > http://www.jsoftware.com/pipermail/programming/2017- >> >> August/048143.html >> >> > >> >> > >> >> > >> >> > On Fri, Aug 18, 2017 at 9:08 AM, Erling Hellenäs < >> >> erl...@erlinghellenas.se> >> >> > wrote: >> >> > >> >> >> Hi all ! >> >> >> >> >> >> I tried out the functionality of Jx and got some problems. >> >> >> I expected these two expressions to be equivalent, but got syntax >> error >> >> on >> >> >> the second. >> >> >> >> >> >> +(".. '/') 1 2 3 >> >> >> 6 >> >> >> +(".. [: / ]:) 1 2 3 >> >> >> |syntax error >> >> >> | +("..[:/]:)1 2 3 >> >> >> >> >> >> I had problems with Knot until I recognized that it is `. and not `: >> as >> >> >> the description says. >> >> >> >> >> >> "|`:|Knot (Gerund) – is similar to the J primitive|`|(tie) except >> that a >> >> >> non-boxed noun argument is first replaced by its atomic >> representation." >> >> >> >> >> >> +`.1 >> >> >> >> >> >> ┌─┬─────┐ >> >> >> │+│┌─┬─┐│ >> >> >> │ ││0│1││ >> >> >> │ │└─┴─┘│ >> >> >> └─┴─────┘ >> >> >> >> >> >> I had problems with Cloak. I managed to use it but didn't understand >> >> what >> >> >> it is for. >> >> >> >> >> >> AtDot=: 2 : (':';'[ v^:_1 u@v') >> >> >> >> >> >> 1 0 1 -AtDot# 4 5 6 >> >> >> >> >> >> _4 0 _6 >> >> >> >> >> >> 1 0 1 -(2 ?: 5!:1<'AtDot')# 4 5 6 >> >> >> >> >> >> _4 0 _6 >> >> >> >> >> >> >> >> >> The example gives syntax error. Missing parenthesis. >> >> >> >> >> >> (;:'ver conj adv')=. _3 _2 _1<@?:"0) 0 >> >> >> >> >> >> |syntax error >> >> >> >> >> >> | (;:'ver conj adv')=: _3 _2 _1<@?:"0)0 >> >> >> >> >> >> (;:'ver conj adv')=. _3 _2 _1<@?:("0) 0 >> >> >> >> >> >> ver >> >> >> >> >> >> (_3?:0) >> >> >> >> >> >> conj >> >> >> >> >> >> (_2?:0) >> >> >> >> >> >> adv >> >> >> >> >> >> (_1?:0) >> >> >> >> >> >> >> >> >> I guess you can use Jx to define adverbs and conjunctions in tacit >> code, >> >> >> but I didn't understand how. >> >> >> >> >> >> >> >> >> Cheers, >> >> >> >> >> >> Erling >> >> >> >> >> >> >> >> >> >> >> >> On 2017-08-01 22:55, Jose Mario Quintana wrote: >> >> >> >> >> >>> A brief description of the Jx v1.0 extensions, together with links >> to a >> >> >>> Windows 64 bit dll, a Unix 64 bit so binaries and the patch >> >> corresponding >> >> >>> to the J806 source can be found at, >> >> >>> http://www.2bestsystems.com/foundation/j/jx1 >> >> >>> >> >> >>> Summary >> >> >>> >> >> >>> - Spelling >> >> >>> - Names with unicode characters >> >> >>> - Primitives >> >> >>> Added =.. =:: $:: [. ]. ]: ".. ":: `. ?: i.. O. >> >> >>> Extended ~ $. >> >> >>> - Foreign >> >> >>> Added 104!:5 Unnamed Execution >> >> >>> >> >> >>> - Trains >> >> >>> a v Added (different from Jx v0) >> >> >>> a a Extended (different from Jx v0) >> >> >>> c a Resurrected >> >> >>> a c a Resurrected >> >> >>> >> >> >>> The Jx v0 page, >> >> >>> http://www.2bestsystems.com/foundation/j/jx0 >> >> >>> will be removed in the near future >> >> >>> >> >> >>> Time permitting, there will be soon a script with assertions for >> those >> >> who >> >> >>> want to verify binaries targeted for other platforms and I will try >> to >> >> >>> illustrate the facilities in action with some scripts. >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> On Sat, Mar 8, 2014 at 11:40 PM, Jose Mario Quintana < >> >> >>> jose.mario.quint...@gmail.com> wrote: >> >> >>> >> >> >>> The patches, a Windows 32-bit DLL, a cheatsheet, 32 and 64 bit Unix >> >> >>>> libraries are found at: >> >> >>>> >> >> >>>> >> >> >>>> http://www.2bestsystems.com/foundation/j/ >> >> >>>> >> >> >>>> >> >> >>>> For more details and demonstration code, see the article in the >> >> Journal >> >> >>>> of >> >> >>>> J: http://journalofj.com/index.php/vol-2-no-2-october-2013 (only >> the >> >> >>>> definition of the new conjunction knot (`.) has been slightly >> modified >> >> >>>> for >> >> >>>> the release). >> >> >>>> >> >> >>>> >> >> >>>> >> >> >>>> ------------------------------------------------------------ >> >> ---------- >> >> >>> 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/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 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm