[MetaTeX] Metatex info
taco at elvenkind.com
Thu Jul 15 10:29:43 CEST 2004
I am continually updating the web pages these days. You should find
the current description better to understand that yesterday's.
What follows is a list of things that can/should be done (I'm only listing
tasks that do not interfere with one another too badly).
On Wed, 14 Jul 2004 21:02:19 +0200, Bart wrote:
> Nice project. I am planning to contribute to this project. However for
> the moment I do not know were to start.
A TODO list follows. It only lists things that can be done (almost)
straight away, I will write a more general roadmap sometime later.
Take your pick ;)
- A logo and website design
- my paper needs to be translated to english (and converted to HTML).
- Sarovar projects have to be requested for CXTeX, TeXtool, TeXmake and TeXFS.
http://www.sarovar.org (It is probably best when I do that.)
- The current cxtex-0.51.tar.gz sources wil need to be split into 3 component
parts: libXTeX, libtextool (was texutil), and libtexmake (that's current texexec).
- CXTEX (libXTeX), TeXtool (libtextool), and TeXmake (libtexmake) will then need
to be changed to use autoconf.
- libMPost needs to be fixed so that it can qualify as 'testable software'
(that is what I am doing currently)
- The current executable (cpdfetex) within CXTeX needs rigorous testing and
debugging. There are definately still bugs in the converted pascal Web code.
- Designs should be worked out for the TeXmake, TeXtool and TeXFS library.
This has to be done before we can port the texutil and texexec parts.
An interesting notion proposed by Roland Kwee was a "tex shell",
with it's own set of commands. This idea implies the definition of a "tex shell
language", and I like it quite a lot.
- The internal representation of fonts/characters needs a redesign. Perhaps it
even needs an extra library called TeXfont o.s.s. At least the following is
There should be a single array containing all (basic i.e. tfm only) fonts, where
each font is an instance of
This structure should incorporate all of the bits of info that are currently stored
in separate arrays.
This problem appears in both TeX and MetaPost, but it is much easier to
start by looking at metapost.
- Likewise, the symbol table needs a bit of redesign. Specifically,
* hash[k]+eqtb[k] (old) == symbol[k] (new)
* the symbol table should be run-time extendible
This also appears in both programs, but here one should start with TeX since
TeX needs much more functionality.
- The typical pascal Web approach with a static block of memory that grows
from two sides is a PITA, because it forces the mem size to a fixed quantity.
The only clean way around that is to come up with a low-level node
structure and a basic 'token' type, to replace the current situation.
(For TeX, the design of these structures can be borrowed from NTS. )
We should probably keep a static array (for efficiency), but at least two of
token_mem // for tokens
node_mem // for nodes, including character and other 'really small' nodes
More information about the Metatex