At 11:47 +0100 98/07/01, David Carlisle wrote:
>I think actually there is no disagreement about the need for separate
>levels. What I think is important though, is to think of one level
>at a time. To take your analogy, when designing an asembler language, one
>probably does not need to consider too much the user interface of a
>Windowing GUI system. (Although one needs to check that the basic
>functionality that will be needed in such an application is provided).
The reason for this is traditional, how those languages evolved relating
to the technology. But this is no longer the case; new developments give
strong consideration to the interface between the levels.
>More specifically, I'd say that the fundamental error in the design of
>the tex language was to design the primitives with a syntax allegedly
>suitable for easy use as part of top level document markup. This
>collapsing of all levels into one is largely responsible for the mess
>that is contained in the legacy (la)tex documents.
This one I fully agree on: One should clearly focus on the different
level and design what is most appropriate for that level.
For example, if the concept of modules is introduced as a naming
convention in L3PL, then one should not on this level give much
consideration what separators /, :, _, etc to use relating to what might be
used on another level, except for the problem of ensuring that one does not
block any capacities on the levels above.
>So the aim with the l3 code is to get a foundation in which higher
>levels can be programmed. These higher levels may well have their own
>concepts of modularity, which need not necessarily be directly related
>to the modules at this level.
On this question, the idea with concept of modularity is it should not
need to clash on the different levels, at least in the way that I have
perceived it: High level modules should expand their names to the same kind
of naming convention as in the lower level, except that such high modules
may be allowed to do it in another way (via parsing).
>This is the reason why I (and probably Frank) appear to be `against'
>discussion of higher level issues at this time. It is not that they are
>not needed, it is just that we want to avoid the problems inherent in
>TeX of having a low level system whose design is distorted by a concern
>to make it useable at all levels at once.
Actually, I did not have the LaTeX3 team in my mind: Actually, I mostly
want to bring out a clear focus on these ideas.
* Email: Hans Aberg <mailto:[log in to unmask]>
* Home Page: <http://www.matematik.su.se/~haberg/>
* AMS member listing: <http://www.ams.org/cml/>