One possible way to assure a unique locale name is to use locale/create (18!:3). It has an option to return an error if the locale name already exists. Or simply get a locale number assured to be unique.
On Tue, Oct 17, 2017 at 6:33 AM, Henry Rich <[email protected]> wrote: > The locale mechanism is the way to do it. The possibility of locale-name > collision is unavoidable. > > In NuVoc we prefer the terms 'public' and 'private' to distinguish names > visible outside of vs. only inside explicit definitions. A name that is > public in its locale cannot be seen as a simple name from other locales. > > Names defined in the z locale are truly global: visible as simple names > from anywhere. > > Henry Rich > > On 10/17/2017 8:12 AM, Rudolf Sykora wrote: > >> Hello, >> >> several times I encountered a problem of scoping my variables. >> As I understand, variables in J are either global, or local. >> This is fairly similar to C, but in C the globals may be globals >> just within a file, and, unless marked extern, they are still >> invisible to the outside. >> >> Since local variables of a function are not visible to functions >> called by the function, I do not see a good way to limit the scope >> of my variables. Using _locale_ is not a good way either, since it >> may happen somobody else will incidently create the same _locale_, >> which will later interfere with mine. >> >> Solving this with objects together with automatically-created numbered >> _locale_ seems a bit too heavy weapon. >> >> Is there a good way? >> >> Thanks for comments >> Ruda >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > > > --- > This email has been checked for viruses by AVG. > http://www.avg.com > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
