Wildemar Wildenburger schrieb: > Joachim Durchholz wrote: >> And yes, it sucks in major ways. >> > Oh my God, I don't want to, but I just have to ask: Why?
First of all, irregularities. http://en.wikipedia.org/wiki/TeX#The_typesetting_system: "[...]almost all of TeX's syntactic properties can be changed on the fly which makes TeX input hard to parse by anything but TeX itself." Then: No locals. In particular, processing is controlled via global flags. If you need a different setting while a macro is processing, you have to remember to reset it before macro exit. Many packages just set the flags to a standard value. In other words, if you didn't know that a specific flag affects the operation of your macro, the macro may break when used with a different package that sets the flag to a different default value. (This may be one of the reasons why everybody just sticks with LaTeX.) Four stages of processing, and you have to know exactly which is responsible for what to predict the outcome of a macro. This is more a documentation problem - for several features, there's no description which stage is responsible for processing it. That can make working with a feature difficult, since you don't know which processing steps have already been done and which are still to happen. My TeX days are long gone, so I may have forgotten some of the problems, but I think these were the worst. (And, of course, I may have gotten some details mixed up, so if you're seriously interested in the good and bad sides of TeX, verify before taking anything for granted.) Note that it's just the markup language that I object to. The typesetting algorithms seem to be remarkably regular and robust. I would have very much liked to see TeX split up into a typesetting library and a language processor. Unfortunately, that was beyond my capabilities at the time I came into contact with TeX, and I never got around to revisiting the issue. However, the TeX algorithm has been extracted and made available as a Regards, Jo -- http://mail.python.org/mailman/listinfo/python-list