Hello, On Tue, Jul 08, 2003 at 07:33:42PM +0200, Joachim Schrod wrote: > That's why the ant work of Achim is so interesting, including his > distinction between markup and programming syntax.[*] It's an open > question if O'Caml programs are really good for this problem domain > (I'm not really convinced), Neither am I. I think at least some syntactic sugar is needed to simplify the code. For example, at the moment reading the arguments of a command is quite cumbersome: The code for \setcounter{counter}{number} is value set_counter ps = do { let ctr = read_expanded_argument ps in let arg = Parser.str_to_int (read_expanded_argument ps) in ParseState.set_counter ps ctr arg }; It would be much neater to write something like: command \setcounter (ctr : expanded) (arg : int) = { ParseState.set_counter ps ctr arg }; On the other hand, the advantage of using OCaml is that every command has access to all internals of ant. I'm thinking of implementing a special purpose programming language for style files, but that's a lot of work and I won't manage to make it as fast as compiled OCaml code. So probably I'll just write a preprocessor to add some syntactic sugar to OCaml. > but the framework is powerful enough to plug in other style sheets and > to experiment with it. Yes, it would be no problem at all to attach, say, an XML parser to ant, or a graphical interface like Lyx. > [*] Disclaimer: I'm biased here and think that ant has not got the > acknowledgement in the TeX community it deserves. All talk about NTS, > and here we have a system with concepts that is better already. The > concepts are nearer towards the original goals for NTS, too. To be honest, NTS has the big advantage of being complete. ant still lacks support of insertions and a lot of smaller things. Achim -- ________________________________________________________________________ | \_____/ | Achim Blumensath \O/ \___/\ | Mathematische Grundlagen der Informatik =o= \ /\ \| www-mgi.informatik.rwth-aachen.de/~blume /"\ o----| ____________________________________________________________________\___|