GTM::Preprocessor::Cache - A preprocessor-backend that emulates some preprocessor features of Cache


This is a backend module, use it only indirect by invoking the add method of GTM::Preprocessor


GTM::Preprocessor::Cache is a preprocessor-backend that handles the following directives:

 #include FILE
 #define A B
 #define Z(%a) X(%a)

It should be compatible to the preprocessor provided by Intersystems Cache for the stuff it supports - if not, drop me a note :)


Nothing is exported at all by all GTM::Preprocessor backend modules...


We are not fully Cache compatible, for example, Cache (5.0.5) hangs forever if you have the following input:

 #define A "die"
 #define A $$$A
      W $$$A

We do not try to emulate Cache endless loops.


the GTM manpage, the GTM::Preprocessor manpage, the GTM::Perl manpage, the GTM::GlobalTie manpage.

Note that the the GTM manpage-series of modules obsolete my ``old'' Cac framework which had the following packages:

Cac, the Cac::ObjectScript manpage, the Cac::Global manpage, the Cac::Routine manpage, the Cac::Util manpage, the Cac::Bind manpage.


Stefan Traby, <>


 Copyright (C) 2004 by Stefan Traby <>
 Copyright (C) 2004 by KW-Computer Ges.m.b.H., Graz, Austria

This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (GPL).

In addition to this license

    Sanchez Computer Associates, Inc.
    40 Valley Stream Parkway
    Malvern, PA 19355, USA

has the non-exclusive right to do what ever they want with this code.