" On my wish list would be something similar for the “each" adverb. While writing tacit code I very often find myself writing
u@(0{::]) ; v@:(1{::]) etc. " Louis, I find the points you raised very interesting and they might influence Jx v1.1. Meanwhile, if you really very often would like to produce, v0@(0{::]) ; v1@:(1{::]) ; v2@:(1{::]) ... given v0, v1, v2, ... You could write an (explicit?) adverb, Each for instance, such that, for example, v0`v1`v2`v3 Edge v0@:(0&({::)) ; v1@:(1&({::)) ; v2@:(2&({::)) ; v3@:(3&({::)) I prefer, of course, [: v0 v1 v2 v3 Each v0@:(0&({::)) ; v1@:(1&({::)) ; v2@:(2&({::)) ; v3@:(3&({::)) It was very easy to write Each tacitly in Jx particularly because I had seen similar patterns before. If you need often the cyclical feature then I would expect it to be a matter of adding a minor complication. Do you really need the cyclical feature? You might also like to read the oblique (/.) entry in the Dictionary and other sources; it could help. On Fri, Aug 4, 2017 at 1:03 AM, Louis de Forcrand <ol...@bluewin.ch> wrote: > I quite like this idea. It’s unfortunate that m”n was previously defined > differently, > but as you say conflicts would probably be nonexistent, and I’ve often > wanted > to apply one verb to the first element of an array, another to the second, > etc. > > On my wish list would be something similar for the “each" adverb. While > writing tacit code I very often find myself writing > > u@(0{::]) ; v@:(1{::]) etc. > > and the readability / terseness of > > u`v&.> > > would be valuable IMO (albeit perhaps not easy to incorporate correctly > into the language). > > > I was just about to send this email, but then I thought of this: > > For adverbs / conjunctions like @, &, or &. which depend on the rank of > their right argument (unlike @:, &:, &.:), a gerund left argument could be > extended cyclically over each item of the right argument’s result. Not only > would that check one item off my wish list, but if gerund m in m”n proves > to > be unacceptable, it could be replaced by > > m@(]”n) > > This would create no incompatibilities apart from code relying on errors > thrown by those operators. > > Louis > > > On 03 Aug 2017, at 01:51, Henry Rich <henryhr...@gmail.com> wrote: > > > > The argument for gerund"n is this: > > > > All partitioning modifiers (/. / ;.n etc,) support cyclic gerunds. The > > anomalous case is " which is the most basic partitioning modifier of all. > > It should have been defined to support cyclic gerunds. > > > > The proposal is to put it right without breaking any code. m"n when m > > resembles a gerund and n is not _ will be very rare, perhaps nonexistent, > > in actual code. For new code, m"_"n will work for any n. > > > > Henry Rich > > > > On Thu, Aug 3, 2017 at 3:07 AM, 'Pascal Jasmin' via Programming < > > programm...@jsoftware.com> wrote: > > > >> the best solution I've seen, > >> > >> > >> isgerund =: 0:`(0 -.@e. 3 : ('y (5!:0)';'1')"0)@.(0 < L.) :: 0: > >> > >> > >> tests that each "box" can be passed to 5!:0 without error. > >> > >> ________________________________ > >> From: Bill <bbill....@gmail.com> > >> To: "programm...@jsoftware.com" <programm...@jsoftware.com> > >> Sent: Wednesday, August 2, 2017 9:01 PM > >> Subject: Re: [Jprogramming] Jx version 1.0 release > >> > >> > >> > >> J interpreter must know when a noun is a gerund, so is it possible to > add > >> a new primitive to test for gerund? Or is there already J script to test > >> for gerund? > >> > >> Sent from my iPhone > >> > >> On 3 Aug, 2017, at 3:36 AM, Henry Rich <henryhr...@gmail.com> wrote: > >> > >>> I expect to make some more improvements to dyad u"n, and eventually to > >>> rewrite the monad to match the dyad. My availability to work on this > >> will > >>> be intermittent for a while. The 8.06 code as is works, and fixes a > >>> long-standing bug reported by Martin Neitzel. > >>> > >>> I have suggested using m"n, where n is not _, to implement a cyclic > >> gerund > >>> m. If m doesn't look like a gerund, it would be treated as a simple > >> noun. > >>> While this is not strictly compatible, I think it very unlikely that it > >>> would break any existing code. I think m"n was wrongly defined and > that > >>> this is the correct definition. My opinion is not universally shared > so > >> I > >>> haven't acted on it. > >>> > >>> Henry Rich > >>> > >>> On Wed, Aug 2, 2017 at 5:03 PM, Thomas Costigliola <fo...@iocane.net> > >> wrote: > >>> > >>>> You can try removing the conditional statement enclosing that line, > but > >>>> for now I would say the patch is broken under Clang. Since the rank > code > >>>> was completely rewritten in J805 and J806 and ":: is based on the J804 > >> rank > >>>> with some unfinished updates Henry was working on, the real solution > is > >> to > >>>> rewrite ":: based on the new rank code. But that should wait until the > >> code > >>>> is stable. Does anyone anticipate more changes? > >>>> > >>>> On a more philosophical note, ":: implements gerund left arguments > that > >>>> apply to the items cyclically. The reason for adding a new primitive > and > >>>> not extending ": is because it breaks using ": to define constant > >>>> functions. If someone has any ideas to make them play nicely together > >> then > >>>> they can be merged into a single primitive. The issue is that there is > >> no > >>>> distinction between a noun and gerund. > >>>> > >>>> Regards, > >>>> -Thomas > >>>> > >>>> > >>>> On 08/02/2017 11:52 AM, bill lam wrote: > >>>> > >>>>> Yes, I use Clang and have -Werror -Wextra in CFLAGS. > >>>>> Sometimes vs2013 is much less tolerant. > >>>>> > >>>>> Ср, 02 авг 2017, Thomas Costigliola написал(а): > >>>>> > >>>>>> That looks like Henry's code taken from cr.c at some older version. > It > >>>>>> compiles fine for me in GCC and Visual Studio 2013. It is in the > >>>>>> implementation of "::, which seems to be working in my tests, so > that > >>>>>> code > >>>>>> never gets hit. Are you using Clang? It's much less tolerant of code > >> like > >>>>>> that. > >>>>>> > >>>>>> Regards, > >>>>>> -Thomas > >>>>>> > >>>>>> On 08/02/2017 11:21 AM, bill lam wrote: > >>>>>> > >>>>>>> When I tried to compile, but this line in best.c failed. > >>>>>>> > >>>>>>> *((I*)0)=0; // scaf > >>>>>>> > >>>>>>> and I can not understand its intention, access to memory > >>>>>>> address 0 should cause segfault. > >>>>>>> > >>>>>>> Вт, 01 авг 2017, Jose Mario Quintana написал(а): > >>>>>>> > >>>>>>>> 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/ > >> forums.htm > >> > >>>>>> ------------------------------------------------------------ > >> ---------- > >>>>>> For information about J forums see http://www.jsoftware.com/ > >> forums.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 > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm