diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/reduce/rweb/underscore.web |
Initial commit
Diffstat (limited to 'web/reduce/rweb/underscore.web')
-rw-r--r-- | web/reduce/rweb/underscore.web | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/web/reduce/rweb/underscore.web b/web/reduce/rweb/underscore.web new file mode 100644 index 0000000000..b04b90c5e6 --- /dev/null +++ b/web/reduce/rweb/underscore.web @@ -0,0 +1,32 @@ +% Copyright (c) 1991: Marcel Roelofs and Peter Gragert +% University of Twente, Enschede, The Netherlands +% @@(#) underscore.web (91/03/11) + +@* Filter to remove underscores from REDUCE source. REDUCE does not +allow sole underscores in identifiers. However, underscores preceded +by an exclamation mark are allowed. Also REDUCE strings may contain +underscores. The following C program is a filter that removes the +forbidden underscores. + +@u +#include <stdio.h> + +main (ac, av) +char **av; +{ +char c; +while ((c=getc(stdin)) != EOF) + if (c=='!') { + putc(c,stdout); + c=getc(stdin); + putc(c,stdout); + } + else + if (c=='\"') { + while (putc(c,stdout), (c=getc(stdin)) != '\"') ; + putc(c,stdout); + } + else + if (c != '_') putc(c,stdout); +} + |