This is the first public release of fully reentrant C
    scanners for the PHP language and the INI system.  They
    can be used to replace the Flex-based implementations
    commonly found in the Zend Engine.

    Features:

    - Flexible I/O model; lays groundwork for fully supporting
      modern web-servers such as Apache 2.0;
    - uses portable C only; significantly improves portability by
      removing dependence on GNU extensions of C++;
    - fully thread-safe without loss of speed.

    The software is currently available in the form of three
    source files and a patch to the Zend Engine.

    http://schumann.cx/ngscan-0.1.tar.gz

    To install, cd into the ngscan directory and run
    "make ZEND=../php4/Zend install", followed by a buildconf.

    Because software already exists to eliminate the scan/parse
    process, speed was not a main concern.  The new language
    scanner is faster than the old one in all tested scenarios
    though.

     time saved    lines     what
            10%    500K      <? echo test ?>
            15%    500K      <? echo "test" ?>
            40%    1.5M      pure HTML
              -    500K      ZTS, <? echo test ?>       (1)
            87%    500K      ZTS, <? echo "test" ?>
            99%    1.5M      ZTS, pure HTML             (2)

    (1) crashed in vprintf, apparently some glibc/pthread issue
    (2) +4 minutes vs 800 milli-seconds

    (user times taken from a command-line CGI, CFLAGS=-O,
    --enable-inline-optimization, gcc 2.95.3, Linux 2.4.6, glibc
    2.2.3)

    - Sascha                                     Experience IRCG
      http://schumann.cx/                http://schumann.cx/ircg


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to