Complete documentation for CL-PPCRE can be found in the 'doc'
directory.

CL-PPCRE also supports Nikodemus Siivola's HYPERDOC, see
<http://common-lisp.net/project/hyperdoc/> and
<http://www.cliki.net/hyperdoc>.

1. Installation

1.1. Probably the easiest way is

       (load "/path/to/cl-ppcre/load.lisp")

     This should compile and load CL-PPCRE on most Common Lisp
     implementations.

1.2. With MK:DEFSYSTEM you can make a symbolic link from
     'cl-ppcre.system' and 'cl-ppcre-test.system' to your central registry
     (which by default is in '/usr/local/lisp/Registry/') and then issue
     the command

       (mk:compile-system "cl-ppcre")

     Note that this relies on TRUENAME returning the original file a
     symbolic link is pointing to. This will only work with AllegroCL
     6.2 if you've applied all patches with (SYS:UPDATE-ALLEGRO).

1.3. You can also use ASDF instead of MK:DEFSYSTEM in a similar way
     (use the .asd files instead of the .system files).

1.4. For LispWorks there's a file 'lispworks-defsystem.lisp' which includes
     a system definition for LispWork's Common Defsystem.

2. Test

CL-PPCRE comes with a test suite that can be used to check its
compatibility with Perl's regex syntax. See the documentation on how
to use this test suite for benchmarks and on how to write your own
tests.

2.1. If you've used 'load.lisp' to load CL-PPCRE you already have the
     test suite loaded and can start the default tests with

       (cl-ppcre-test:test)

2.2. With MK:DEFSYSTEM you need to compile the 'cl-ppcre-test' system
     as well before you can proceed as in 2.1.

2.3. Same for ASDF.

Depending on your machine and your CL implementation the default test
will take between a few seconds and a couple of minutes. (It will
print a dot for every tenth test case while it proceeds to give some
visual feedback.) It should exactly report three 'errors' (662, 790,
and 1439) which are explained in the documentation.

MCL might report an error for the ninth test case which is also
explained in the docs.

Genera notes (thanks to Patrick O'Donnell): Some more tests will fail
because characters like #\Return, #\Linefeed, or #\Tab have encodings
which differ from Perl's (and thus CL-PPCRE's) expectations.
