At 17:10 +0100 1999/12/08, Lars Hellström wrote:
>>With much of the development of computer languages, there is the idea that
>>the user should be forced to program in certain ways.
>>TeX does not have such a mechanism that could put restraints of usage in
>>say LaTeX. It would be great if TeX had such a capacity, but there is no
>>point in taking up that aspect with TeX as it now is.
>At the risk of sounding like I would want to expel you Hans, I would like
>to say that it seems to me that your energy would be better spent on
>writing an alternative TeX front end within the framework of the NTS
>project. :-) Not only is the creation of a completely new front end the
>natural framework for introducing such ideas as lambda calculus and
>probably also a more throrough implementation of namespaces, but it is also
>the case that the modularity that the NTS project strive to achieve is most
>likely helped if there are complete alternatives to each module.
>Considering your predilection for OOP, it seems to me that you should find
>the NTS project nice; as I understand it, they do OOP throughout.
My guess is that when NFS arrives and becomes a standard replacing TeX,
then the stuff developed within LaTeX can be done in a way that the input
syntax is checked. (I am no longer on the NTS list I think, because I did
not get any mail there for a long time.)
But my guess is that LaTeX will need to make use of such ideas before that.
Then one does ``objects'' which are simply not checked by TeX, but which
has the capacity of carrying some of the structure that one wants to
describe -- such as names localized into various kinds of namespaces (like
classes) and programming with respect to interfaces.
As for myself, I already decided to make my own computer program of a
runtime model which understands lambda calculus. So I do not need any
computer language in order to express my ideas (other than the language it
is written in, currently C++).
It is possible to download ideas from this runtime model to other contexts:
For example, the idea with typed TeX ``objects'' comes from my model rather
than from C++. If one uses dynamic objects, then the object which is
considered the constructor of an object x can be identified with the
(static) type of x. (Perhaps this idea is prevalent in Object C.)