Hi Jonathan,

Jonathan Mayer schrieb:
> 
> Apologies for butting in where my opinion is not asked for, but ...
> 

you're welcome, it's a mailing list, isn't it.


> > statement: A! | B! | C | D
> >
> > is so easy to understand: At least A and B, optionally C and/or D
> > but without ORDER, in comparison to action codes and greps and maps
> > and line noise.
> 
> At what point does "A!" become mandatory?  In the
>         block: statement(s)  /* A or B must be part of block */
> construct?  Or in the
>         program: block(s)    /* A or B must be part of program */
>         block: statement(s)
> construct?  There are times whem both forms are useful -- but defining
> "mandatory" as part of the syntax for the singular "statement"
> construct is limitting.

hmmm, what is wrong when it is necessary for the block statement, because 
then it is automatically true for program

> 
> Also, what if the programmer wants a more complicated logical function
> on the set of statements that comprises a "minimal" block?
> 
> It seems to me, P:RD already has the functionality you desire, in a
> much more flexible form.  What's wrong with:
> 
>         statement: A | B | C | D
>         block: "{" statements(s) "}"
>             {
>                 /* some code to test for the presense of A and B,
>                    else return undef */
>             }

syntax is scattered between grammar rules and action code and the
presense check isn't always so intuitive as in this primitive example.
A and B are also complex subrules and it is really only a question
of style.

> 
> I'd hate to see P:RD fall into same trap as regexps: P:RD doesn't need
> to be a complete programming language.  P:RD is fine as a perl
> accessory.

yes it's really fine, even it it stays as it already is.

Regards
        Charly
-- 
Karl Gaissmaier          Computing Center,University of Ulm,Germany
Email:[EMAIL PROTECTED]          Network Administration
Tel.: ++49 731 50-22499

Reply via email to