RE: The Perl 6 Summary -- preprocessors

2003-07-23 Thread Austin Hastings
> We're not quite in the world of ACME::DWIM, so you can't just replace > the important stuff with ... . :-) Maybe, but the C preprocessor isn't important, here, for itself. Otherwise I could cheat: grammar Grammar::Language::C::Preprocessor { rule CompilationUnit { FIRST { static

Re: The Perl 6 Summary -- preprocessors

2003-07-23 Thread Benjamin Goldberg
Luke Palmer wrote: > > > grammar Grammars::Languages::C::Preprocessor { > > rule CompilationUnit { > > ( | )* > > } > > > > rule Directive { > > ( Include > >| Line > >| Conditional > >| Define > > ) * > > } > > > > rule Hash { /^\s*#\s*

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Luke Palmer
> grammar Grammars::Languages::C::Preprocessor { > rule CompilationUnit { > ( | )* > } > > rule Directive { > ( Include >| Line >| Conditional >| Define > ) * > } > > rule Hash { /^\s*#\s*/ } > rule Include {...} > rule Line {...

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Dave Whipp
"Austin Hastings" <[EMAIL PROTECTED]> > > I.e. is it just an input stream filter? > Doubtful. > > Do you want to do this at the grammar level, or the file level? > > If you want it at the file level, you C a translator (ooh! my > first p6 idiom!) to the file handle. > > If you want it at the gramma

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Austin Hastings
--- Dave Whipp <[EMAIL PROTECTED]> wrote: > "Austin Hastings" <[EMAIL PROTECTED]> wrote: > > $.source = (new > Grammars::Language::C::Preprocessor).open($source); > > I find myself wondering if this is covered by the P6 equiv of > TieHandle. > I.e. is it just an input stream filter? > Doubt

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Austin Hastings
--- David Storrs <[EMAIL PROTECTED]> wrote: > On Mon, Jul 21, 2003 at 12:19:11PM -0700, Austin Hastings wrote: > > > Likewise: > > > > my $fh = open " > > > $fh =~ / > = Grammars::Languages::Runoff::tbl(input_method > >= Grammars::Language::Runoff::eqn(input_method > >

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Dave Whipp
"Austin Hastings" <[EMAIL PROTECTED]> wrote: > What you really want is to be able to "chain" grammars: > > > my $fh = open " > $fh =~ //; > > grammar Grammars::Languages::C { > method init { > SUPER::init; > > $.source = (new Grammars::Language::C::Preprocessor).open($source); > } > .

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread David Storrs
On Mon, Jul 21, 2003 at 12:19:11PM -0700, Austin Hastings wrote: > Likewise: > > my $fh = open " > $fh =~ / = Grammars::Languages::Runoff::tbl(input_method >= Grammars::Language::Runoff::eqn(input_method > = IO::Gunzip)))>/; Very cool. Assuming this ran succe

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Austin Hastings
--- Dave Whipp <[EMAIL PROTECTED]> wrote: > "Piers Cawley" <[EMAIL PROTECTED]> wrote > > Parsers with Pre-processors > > I didn't quite understand what Dave Whipp was driving at when > > he talked about overloading the "" pattern as a way of doing > > preprocessing of Perl 6 patterns. I didn't und

Re: The Perl 6 Summary -- preprocessors

2003-07-21 Thread Dave Whipp
"Piers Cawley" <[EMAIL PROTECTED]> wrote > Parsers with Pre-processors > I didn't quite understand what Dave Whipp was driving at when he talked > about overloading the "" pattern as a way of doing preprocessing of > Perl 6 patterns. I didn't understand Luke Palmer's answer either. He