1. It's possible, because you can implement lambda calculus in TeX's mouth, and everything computable can be implemented in lambda calculus. 2. It's extremely unfeasible, since it will be grotesquely slow and use much too much memory. Letting some characters retain their catcodes can let you get by with a smaller automaton, This is what xmltex does, whether or not that is a feasible system I'm not sure. Note that in xmltex macro files are read with more or less normal catcodes, it's just the document itself where catcodes are set up so that catcodes are fixed and \verb problems go away (to be replaced by other problems:-) In xmltex of course the active characaters just have to parse xml syntax, which is rather more regular than normal latex \ and { syntax. In (la)tex (as in SGML) you need knowledge of each individual command to parse its argument syntax but you can parse XML wthout knowing anything specific about the commands (which is why it is such a verbose language) David _____________________________________________________________________ This message has been checked for all known viruses by Star Internet delivered through the MessageLabs Virus Scanning Service. For further information visit http://www.star.net.uk/stats.asp or alternatively call Star Internet for details on the Virus Scanning Service.