Print

Print


On Wed, 12 August 1998 21:49:41 +0200,
Martin Schroeder <[log in to unmask]> writes:
 > In <[log in to unmask]> Frank Mittelbach <[log in to unmask]> writes:
 > >b) will be drastic: a current LaTeX format (without any packages
 > >loaded) uses about 51088 words of memory before begin document; if the
 > >average word length in commands is 10 (which is far too low with a
 > >consequent implemented module concept) then this gets basically blown
 > >to 500000 which is twice the amount of main mem
[...]

Frank, either I misunderstand your ``word'' or you are wrong with this
analysis.  A control sequence is one token and will use exactly the
same amount of TeX's ``main memory'' independent on the length of its
name.  The names of control sequences are put in TeX's ``string
pool'', thus the string pool will grow if the lengths of control
sequence's name will be enlarged in a module concept.

 > >                                                that i have available
 > >on this machine for everything. i just looked: when we compiled the
 > >Companion the log file showed 208957 words of memory out of 262141
 > >try to imagine to what size this would grow.

... which had other reasons (a bunch of macro definitions/packages,
many and complex box constructions, large and detailed (PicTeX?)
figures etc.), hadn't it?


 > I just looked: emTeX has an hTeX version where main memory can be configured
 > to be between 2097152 (2^21) and 4194304 (2^22). And I don't think there's a
 > limit in TeX to make it even bigger if needed. :-)

There are limits for TeX's main memory size, for a ``bigTeX'' version
with double-sized mem words it's upto 2^32, which should be fairly
enough for the next years. ;-)


 > But I agree that this should be avoided -- but not a taboo.

IMHO a module concept will be a good idea, but the extended use of the
string pool because of a long common csname prefix
(e.g. \contributed/supported/...) should be avoided.  String pool
space is cheap (one byte for each character) in comparison to a main
memory word (4 resp. 8 bytes for each word = token in a token list,
hlist character node etc.), nonetheless it should be used reasonable.


Just my $0.02.


Best wishes,
  -bernd
  member of the e-TeX team
_____________________________________________________________________
Bernd Raichle                                  "Le langage est source
Autor des `german.sty' (aktuell: v2.5e)         de malentendus"
                                               (A. de Saint-Exupery)