What could nest locales do that the current way of local path couldn't? > On Apr 7, 2017, at 5:16 PM, Raul Miller <[email protected]> wrote: > > Currently, J does not nest scopes (nor locales). > > This is conceptually simpler than Lua's approach, but perhaps > frustrating for people who have been trained to expect such things. > > FYI, > > -- > Raul > > > On Fri, Apr 7, 2017 at 4:06 PM, Jan-Pieter Jacobs > <[email protected]> wrote: >> Maybe this goes too far from the original idea, but I always liked the tiny >> Lua language for it's very clear scoping rules: >> >> if it's local, it's local to where the variable (can be a function) was >> defined, and visible for any function defined while in that scope. Even if >> control goes out of that scope, a function has always access to the locals >> in the scope it was defined (called upvalues). Maybe something similar >> could apply to all verbs, adverbs and conjunctions too? >> >> Furthermore, all modules are basically simply tables (the one and only >> compound data type in Lua), and as such, they can be nested at will. >> >> On top of that, metatables allow for defining any fall-through cases if a >> key is not found in a table... >> >> Anyhow, just to say, maybe there's some inspiration to be gotten in the Lua >> Reference manual: https://www.lua.org/manual/5.3/manual.html#3.5 >> >> I've had the plan to interface Lua or its JIT brother LuaJIT.org with J >> (their C interface is not too complicated), to have an alternative to the >> relatively clunky feeling of explicit J. Up to now, I haven't found the >> time to do so, though… >> >> Best regards, >> >> Jan-Pieter >> >> On 7 Apr 2017 19:20, "'Pascal Jasmin' via Programming" < >> [email protected]> wrote: >> >>> To clarify the nested locale problem, >>> >>> if a is an instanced (numbered locale) object within the 'far' locale, and >>> has member b, you canoot do >>> >>> b__a_far_. >>> >>> The workaround that I have used is to modify coclass such that it creates >>> a member in the 'OOP' locale. >>> >>> >>> far_OOP- =: <'far' >>> >>> so now you can access nested as, >>> >>> b__a__far__OOP >>> >>> The first syntax would be preferable. I don't see much of a need for >>> non-instanced locales within other locales. ie, a far (non instanced non >>> numbered) locale within base locale >>> >>> >>> a_far_base_ NB. not really needed. >>> ________________________________ >>> From: bill lam <[email protected]> >>> To: [email protected] >>> Sent: Friday, April 7, 2017 11:51 AM >>> Subject: Re: [Jprogramming] locales with adverbs and conjunctions? >>> >>> >>> nest locale is interesting. I think J can implement it by >>> changing parser/tokenizer to recognize name_a$b$c_ as name in >>> locale c within locale b which is inside locale a. >>> a is in copath of a$b which is in copath of a$b$c. >>> >>> Пт, 07 апр 2017, Raul Miller написал(а): >>>> If we *do* change that, then perhaps we should also be thinking about >>>> being able to nest locales (much like K's namespaces), also. >>>> >>>> The current flat arrangement is based on this rationale which we are >>>> now questioning. >>>> >>>> Put differently: we should not simply change how things work without >>>> thinking through the implications of that change. >>>> >>>> (We will also need a way of determining the locale of an anonymous >>>> verb, for example. Also: would it be possible to have a locale-free >>>> verb? If not, what are the implications of that?) >>>> >>>> Thanks, >>>> >>>> -- >>>> Raul >>>> >>>> >>>> On Thu, Apr 6, 2017 at 5:02 PM, Henry Rich <[email protected]> wrote: >>>>> Currently, yes. But the question is whether we should change that. >>>>> >>>>> Henry Rich >>>>> >>>>> On 4/6/2017 4:41 PM, Raul Miller wrote: >>>>>> >>>>>> Anonymous verbs do not *have* a locale. Locale is an aspect of names >>>>>> and how things are named. >>>>>> >>>>> >>>>> ---------------------------------------------------------------------- >>>>> For information about J forums see http://www.jsoftware.com/forums.htm >>>> ---------------------------------------------------------------------- >>>> For information about J forums see http://www.jsoftware.com/forums.htm >>> >>> -- >>> regards, >>> ==================================================== >>> GPG key 1024D/4434BAB3 2008-08-24 >>> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 >>> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 >>> >>> ---------------------------------------------------------------------- >>> 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
