On 4 Dec 2006, at 19:33, Joel E. Denny wrote:

, but if your design is still flexible, I'd suggest
using names that are more obvious about where the code will be
generated.  For example:

%header{...}
%both{...}

Or maybe:

%declare{...}
%define{...}
%both{...}

In test release 2.3a, the directives are actually named %before- header, %start-header, %end-header, and %after-header. When considering C and C++ in isolation, I preferred those names although other developers seemed to
find them confusing.  However, we have someone working on adding Java
support, and there could be other target languages some day as well. We chose the current names (%code, %requires, etc) because they describe the
purpose of the directives at a more abstract level that seems to make
sense for Java and hopefully future languages.

The problem is that different languages use different paradigms, and it m,ay not be possible to do this stuff in that context then. It might work for parser specific features, but not language specific feature. In particular, for C++, there is no language requirement of a header-source setup - only a tradition inherited from C. Another language, like Java, or Haskell, or whatever, may use a different setup.

  Hans Aberg




_______________________________________________
help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison

Reply via email to