1expander notes: 2o expander.tcl is an objectified version of the expansion algorithm 3 used in expand and Spinster. Goals 4 - Multiple expanders can be used at one time 5 - Handling of batch or incremental input 6 - Support for user-settable brackets 7 - Support for context stack. 8o Next: add and test incremental expansion. 9 10Things done: 11/23/2001 11x Added the evalcmd command; this allows the application to specify 12 a different means of evaluating macros than the default "uplevel 13 #0". 14 15Things done: 11/3/2001 16x Added a couple of more tests for the nested expander problem I 17 fixed the other day. 18x Finished the man page for the current version. 19x Time to zip it up and send it off to Andreas. 20 21Things done: 10/31/2001 22x Updated the list of possible error modes to match the list in 23 Expand 2.1 24x Added tests for each of the error modes to expander.test. 25x Created a modified version of Expand 2.1 that uses expander; it 26 was able to process the Ex Libris website without error. 27x Found an error: if an expander is used to expand text which 28 contains a call to another expander, the two get confused--because 29 of the "::expander::This" variable. 30 - It works for the recordkeeper, because a recordkeeper method 31 can never execute a method for a different recordkeeper. 32 - What if Methods saved the old This, and restored it at the 33 end? 34 - Tried it; it works! All existing tests pass. 35 36Things done: 10/30/2001 37x Wrote more tests; found and fixed bracket restoration bug in expander. 38 39Things done: 10/25/2001 40x Wrote tests for the lb, rb, and errmode commands. 41x Added the reset command. 42x Wrote tests for the reset command. 43x Added the context stack commands, and wrote tests for them. 44 45Things done: 10/24/2001 46x Copied recordkeeper code and docs as a template. 47x Implemented the lb, rb, and errmode accessor methods. 48