On Fri, 16 Jun 2006, Paul Eggert wrote:

> "Joel E. Denny" <[EMAIL PROTECTED]> writes:
> 
> > They're definitions mostly as opposed to just declarations.  I imagine 
> > that's why it's called %defines and --defines.  So, I decided %pre-defines 
> > and %post-defines makes more sense.
> 
> This all sounds OK (in that I can't simplify it much more :-) except
> that the names are still confusing.  "%pre-defines" sounds like
> predefined symbols, but then "%post-defines" would be -- what --
> postdefined symbols?

I modeled this after pre-prologue and post-prologue.  (Speaking of 
confusing names... pre=before, post=after, but the pre-prologue and the 
post-prologue are not before and after the prologue.  They *are* the 
prologue, right?  Or maybe I'm not clear on what the prologue is 
considered to be.)

Given that it requires the user to supply an arbitrary code block, I'm not 
sure users would actually think that %pre-defines means predefined (as in 
defined by Bison or the compiler) symbols.  Relative to Bison symbols, the 
stuff in a %pre-defines is pre-defined, and the stuff in a %post-defines 
is post-defined.

Would %defines-pre and %defines-post be any better to you?  That would be 
just as fine with me.

> How about if we call them both "%defines" and decide which is which
> depending on context?  That would match %{...%}'s behavior.

That's basically the same as my first patch... except that I called it 
%header.  That ordering is what I felt made things confusing and too 
inflexible.

Joel


Reply via email to