This version was released on 2000-10-30.

Revised large chunks of POE::Preprocessor. Added conditional code inclusion on the assumption that not performing macro substitution and compiling code we don't use will be faster. This could well be false.

Added DEBUG_INVOKE and DEBUG_DEFINE to POE::Preprocessor, mainly so the defining and invoking output doesn't clutter up DEBUG'S.

Revised POE::Kernel to use conditional code inclusion instead of optimized-away optrees.

Revised t/05_macros.t to test conditional code inclusion.

Revised t/01_sessions.t to time out in coverage tests. Previously, the tracing library would cause some subtle hang.

Revised the coverage testing tools to cope with conditional code inclusion. Conditional code inclusion inside macros changes line numbers no matter what I do, so the coverage report has to cope.

POE::Preprocessor didn't allow consts which weren't all-caps; now it does. Also permit consts which aren't all letters. This allows a crude sort of operator overloading.

Lifted most of Ilya Zakharevich's nifty Text::Trie to rewrite the regexp optimizer in POE::Preprocessor.

Added POE::NFA, the nondeterministic finite automaton flavor of POE::Session.

Tweaked test t/00_coverage.t to load each module in a separate package. POE::NFA and POE::Session both export constants which overlap.

Tweaked POE.pm to load Session by default. If NFA is specified, it overrides Session. This should prevent accidentally loading Session and NFA at once.

Back to POE CHANGES.