18!:0 y |
Name Class. Give the name class of the locale named y,
with 0 for named, 1 for numbered, _1
for non-existent, and _2 for illegal name. Thus:
18!:0 ;:'base j z 45bad asdf 0'
0 0 0 _2 _1 1
|
[x] 18!:1 y |
Name List. Give the names of named (0) or numbered (1) locales.
The optional left argument specifies the initial letters of names. Thus:
18!:1 [0 All named locales
+----+-+----+--------+-------+-+
|base|j|jcfg|jnewuser|newuser|z|
+----+-+----+--------+-------+-+
asdf_bb_=: 'sesquipedalian'
'jb' 18!:1 [0 All named locales beginning in j or b
+----+--+-+----+--------+
|base|bb|j|jcfg|jnewuser|
+----+--+-+----+--------+
18!:3 '' Create a numbered locale
+-+
|0|
+-+
18!:1 i.2 All named and numbered locales
+-+----+-+----+--------+-------+-+
|0|base|j|jcfg|jnewuser|newuser|z|
+-+----+-+----+--------+-------+-+
|
[x] 18!:2 y |
Path. The monad gives the (search) path
for locale y ; the dyad sets the path for
locale y to x .
The path of a locale is initially ,<,'z' ,
except that the path of locale z is empty initially.
If a name sought in locale f is not found in f ,
then it is sought in the locales in the path of f
(but not searching their paths). For example:
(;:'a cd b') 18!:2 <'f'
18!:2 <'f'
+-+--+-+
|a|cd|b|
+-+--+-+
The path of locale f is set to a , cd ,
and b .
|
|
[x] 18!:3 y |
Create. If y is the empty string, then create a
previously-unused numbered locale.
If y is a name, then (re-)create the named locale;
an error is signalled if the named locale already exists and is non-empty.
The result is the name of the created locale.
x specifies the size of the hash table
for the locale, requiring approximately the same space
as i.2^6+x . If x is elided, then
the defaults specified in 9!:39 are used.
A larger hash table size improves performance;
regardless of the hash table size, a locale may contain an
effectively unlimited number of names.
18!:3 '' Create a numbered locale
+-+
|0|
+-+
18!:3 '' Create another one
+-+
|1|
+-+
18!:1 [1 Names of numbered locales
+-+-+
|0|1|
+-+-+
|
18!:4 y |
Switch Current. Switch the current locale to y at the
end of the currently executing named verb.
Initially the current locale is base .
|
|
18!:5 y |
Current. The name of the current locale. For example:
18!:5 ''
+----+
|base|
+----+
|
18!:55 y |
Erase. Erase locale y (once it finishes execution).
A numbered locale, once erased, may not be reused;
a named locale may be reused at will.
|