Can I just point out that it's not too late to add some (documented) way
to box verbs/adverbs/conjunctions? These could be treated as gerunds by
everything that currently uses gerunds, and the interpreter can just
throw an error if anything attempts to actually unbox them. They are
much harder to confuse than the current gerunds, and will have far
better performance.

This sounds like a radical divergence from the way J works now, but I
don't think it is in practice. Programmers would use some new
conjunction to replace (`), and provided they don't inspect the
structure of gerunds nothing else changes. I suppose there would need to
be a way to check what class of object a box contains, because unboxing
to check the type is not allowed. Gerunds would remain useful for
programmers who want to inspect functions or build them from scratch,
but would otherwise become obselete.

Marshall

On Thu, Aug 03, 2017 at 09:01:37AM +0800, Bill wrote:
> 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 <[email protected]> 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 <[email protected]> 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 <
> >>>>>> [email protected]> 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/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

Reply via email to