I have been working (slowly) on getting Waldek's finite state version of notangle into a literate program, and I think I am making progress. As I do so, I would like to raise a question because it may impact how this should be done.
Looking at the TeX output of the noweb command, it should be possible to generate this output from Lisp as well and combine both the code extraction and document generation. If the scan records some additional information, and the standard noweb TeX output style is used, this could reduce the external requirement to only axiom.sty (which I gather contains the noweb sty file?) The obvious thing to want to do is generate vanilla TeX or LaTeX and be able to use a garden variety external LaTeX system to do everything, but while page references are (I believe) within the standard package I'm doubtful the automatic assignment of 2a, 2b, etc. to chunks on a page is a standard ability - perhaps that's what the sty file defines. (I haven't dived into the style file as yet.) The Lisp system doesn't have enough information (any, actually) about page numbering to generate these internally - it must be done as a TeX command (unless someday we do the typesetting in lisp as well, and I don't think we want to wait for that.) My first thought is that a lisp notangle isn't going to be worth the trouble without the additional noweb ability, since to generate the documentation we still need noweb and Tim has repeatedly pointed out document creation is an integral part of literate programming. Given that, the thing to do is to proceed to add the ability to generate both the source file and the TeX file before proposing a literate version of this for actual inclusion in Axiom. Would everyone concur? If so, should the extra step be taken of trying to generate vanilla TeX or LaTeX that doesn't require an external axiom.sty file? This might mean inserting some important definitions into each file to eliminate the sty file requirement, but I don't know enough yet to say. Probably the quickest and simplest thing to do would be to simply generate the same output noweb does, and continue to require axiom.sty - if that is OK with everyone I can take a crack at it. Sorry about the long time it's been taking to get this done - I was sick this last week and also keeping the finite state tangle straight has been harder than probably it should be :-/. Cheers, CY _______________________________________________ Axiom-developer mailing list Axiom-developer@nongnu.org http://lists.nongnu.org/mailman/listinfo/axiom-developer