Help / Release / J 4.06 / m : 0 Space Consumption Reduced
>> << Pri JfC LJ Phr Dic Voc !: Rel NuVoc wd Help Release
m : 0 Space Consumption Reduced |
initial writing: 2000-12-19 |
The space consumed by verbs, adverbs, and conjunctions have
been reduced. For explicit definitions, the reduction
is typically by a factor of between 2 and 3; for tacit
definitions, the reduction (if any) is very minor.
The space reduction obtained from economizing in several areas,
including:
• | Discarding from the representation all comments and
non-essential white space; presumably the source text is available literatim in some source script. (9!:40 and 9!:41 control whether comments and non-essential white space are retained.) |
• | Sharing the space for some commonly-used constants |
• | Limiting the maximum number of lines to 65535 |
• | Limiting the maximum number of words per line to 65535 |
• | Limiting the maximum length of the non-locale part of a name to 255 |
• | Renumbering the code used for control words from n to 1+2^.n |
The verb 7!:5 (new in this release)
can be used to determine the space consumed by an object.
The verb sp defined below can be used in previous
releases to compute the same measure; it is destructive in that it
works by erasing the object named in the argument.
sp=: 3 : 0 p=. 7!:0 q=. 7!:0 p=. 7!:0 1 [ 4!:55 y. q=. 7!:0 p-q ) 7!:5 <'scriptmake_j_' non-destructive 4544 sp <'scriptmake_j_' destructive: erases argument 4544 scriptmake_j_ |value error: scriptmake_j_
The non-noun system utility definitions in the j locale
give an indication of the amount of reduction:
Name | J 4.06 | J 4.05 | Ratio | |
Tacit | ||||
boxopen | 448 | 448 | 1.00 | |
build3 | 6400 | 9024 | 1.41 | |
cleantable | 768 | 896 | 1.17 | |
exist | 1152 | 1472 | 1.28 | |
fexist | 1152 | 1472 | 1.28 | |
fileprintsetup | 896 | 1216 | 1.36 | |
filex | 768 | 832 | 1.08 | |
fullname | 192 | 384 | 2.00 | |
getpath | 896 | 960 | 1.07 | |
info | 192 | 384 | 2.00 | |
pathsep | 0 | 0 | 0.00 | |
tolower | 3712 | 3712 | 1.00 | |
Explicit | ||||
builder | 2688 | 8960 | 3.33 | |
buildpublic | 832 | 2112 | 2.54 | |
buildsource | 1792 | 5440 | 3.04 | |
cename | 640 | 1664 | 2.60 | |
classwizard | 832 | 1792 | 2.15 | |
config | 640 | 1152 | 1.80 | |
debug | 1216 | 3392 | 2.79 | |
demos | 640 | 1152 | 1.80 | |
dosname | 832 | 2752 | 3.31 | |
edit | 4096 | 11776 | 2.88 | |
editfind | 768 | 1792 | 2.33 | |
editinputlog | 4160 | 11712 | 2.82 | |
editinputlogs | 3904 | 11520 | 2.95 | |
fif | 1344 | 3456 | 2.57 | |
filenew | 832 | 1920 | 2.31 | |
filenewform | 832 | 1856 | 2.23 | |
fileopen | 960 | 2496 | 2.60 | |
fileprint | 1600 | 3456 | 2.16 | |
formeditrun | 2304 | 6336 | 2.75 | |
getconfig | 896 | 2240 | 2.50 | |
getscripts | 6144 | 17984 | 2.93 | |
gettarget | 3072 | 9408 | 3.06 | |
gettargetlocale | 2688 | 6912 | 2.57 | |
globaldefs | 2432 | 5184 | 2.13 | |
gridwizard | 832 | 1792 | 2.15 | |
help | 1152 | 2368 | 2.06 | |
htmlhelp | 832 | 1792 | 2.15 | |
jrequires | 832 | 1600 | 1.92 | |
lab | 768 | 1792 | 2.33 | |
load | 832 | 1600 | 1.92 | |
loadd | 896 | 1664 | 1.86 | |
loadp | 1088 | 2112 | 1.94 | |
loadreset | 576 | 1024 | 1.78 | |
loads | 3008 | 8576 | 2.85 | |
macname | 576 | 1024 | 1.78 | |
open | 2944 | 7296 | 2.48 | |
openfiles | 1728 | 4992 | 2.89 | |
origin | 576 | 1536 | 2.67 | |
printfiles | 2176 | 4672 | 2.15 | |
prints | 1664 | 3840 | 2.31 | |
projectmanager | 1408 | 3456 | 2.45 | |
publish | 768 | 1728 | 2.25 | |
putconfig | 640 | 1344 | 2.10 | |
require | 1344 | 3904 | 2.90 | |
save | 3072 | 9408 | 3.06 | |
scriptmake | 4544 | 10944 | 2.41 | |
scripts | 3520 | 11136 | 3.16 | |
selactive | 2112 | 5120 | 2.42 | |
unixname | 576 | 960 | 1.67 | |
wpreset | 1472 | 4032 | 2.74 | |
wpsave | 3904 | 11392 | 2.92 | |
wpset | 3008 | 6656 | 2.21 |