Some thoughts on foreach reverse
[p5sagit/p5-mst-13.2.git] / pod / perlfilter.pod
index d5fae92..51cd8ce 100644 (file)
@@ -1,7 +1,6 @@
 =head1 NAME
 
 perlfilter - Source Filters
 
 =head1 DESCRIPTION
 
@@ -198,7 +197,7 @@ going to this trouble is when writing a source scrambler. The
 C<decrypt> filter (which unscrambles the source before Perl parses it)
 included with the source filter distribution is an example of a C
 source filter (see Decryption Filters, below).
+
 
 =over 5
 
@@ -410,6 +409,7 @@ Here is the complete Debug filter:
     package Debug;
 
     use strict;
+    use warnings;
     use Filter::Util::Call ;
 
     use constant TRUE => 1 ;
@@ -527,7 +527,7 @@ blocks get included.
 Once you can identify individual blocks, try allowing them to be
 nested. That isn't difficult either.
 
-Here is a interesting idea that doesn't involve the Debug filter.
+Here is an interesting idea that doesn't involve the Debug filter.
 Currently Perl subroutines have fairly limited support for formal
 parameter lists. You can specify the number of parameters and their
 type, but you still have to manually take them out of the C<@_> array
@@ -551,12 +551,31 @@ useful features from the C preprocessor and any other macro processors
 you know. The tricky bit will be choosing how much knowledge of Perl's
 syntax you want your filter to have.
 
+=head1 THINGS TO LOOK OUT FOR
+
+=over 5
+
+=item Some Filters Clobber the C<DATA> Handle
+
+Some source filters use the C<DATA> handle to read the calling program.
+When using these source filters you cannot rely on this handle, nor expect
+any particular kind of behavior when operating on it.  Filters based on
+Filter::Util::Call (and therefore Filter::Simple) do not alter the C<DATA>
+filehandle.
+
+=back
+
 =head1 REQUIREMENTS
 
 The Source Filters distribution is available on CPAN, in 
 
     CPAN/modules/by-module/Filter
 
+Starting from Perl 5.8 Filter::Util::Call (the core part of the
+Source Filters distribution) is part of the standard Perl distribution.
+Also included is a friendlier interface called Filter::Simple, by
+Damian Conway.
+
 =head1 AUTHOR
 
 Paul Marquess E<lt>Paul.Marquess@btinternet.comE<gt>