|
Packit |
292bd0 |
Revision history for Perl extension Yapp.
|
|
Packit |
292bd0 |
|
|
Packit |
292bd0 |
- original version; created by h2xs 1.18
|
|
Packit |
292bd0 |
0.01 Thu Jun 25 20:02:09 1998
|
|
Packit |
292bd0 |
0.02 Never released
|
|
Packit |
292bd0 |
0.03 Never released
|
|
Packit |
292bd0 |
0.04 Never released
|
|
Packit |
292bd0 |
- Fix installation of yapp.pl to $INST_SCRIPT
|
|
Packit |
292bd0 |
- $VERSION is now in Yapp/Driver to check compatibility
|
|
Packit |
292bd0 |
- Add debugging driver and debug option
|
|
Packit |
292bd0 |
- Bug in error recovery fixed: do not shift an $error reduction
|
|
Packit |
292bd0 |
- Add LeftValue, Curtok and Curval methods
|
|
Packit |
292bd0 |
- Add driver version compatibility check
|
|
Packit |
292bd0 |
0.05 Thu Jul 03 20:05:05 1998
|
|
Packit |
292bd0 |
- Add LeftValue, Curtok and Curval methods
|
|
Packit |
292bd0 |
0.06 Tue Jul 07 20:36:17 GMT 1998
|
|
Packit |
292bd0 |
- Error token '$error' becomes 'error' (like in yacc)
|
|
Packit |
292bd0 |
- The '$end' token becomes ''
|
|
Packit |
292bd0 |
0.07 Never released
|
|
Packit |
292bd0 |
- Default action become a separate entry in states hash
|
|
Packit |
292bd0 |
- $COMPATIBLE value changed to 0.08
|
|
Packit |
292bd0 |
- The grammar parser is now a Yapp parser module
|
|
Packit |
292bd0 |
- Comments can be either Perl (#...\n) or C /* ... */ style
|
|
Packit |
292bd0 |
- The parser accepts %type, %union and <type> constructs and
|
|
Packit |
292bd0 |
almost ignore them, except checking consistency between token
|
|
Packit |
292bd0 |
and non-terminal declarations (warnings)
|
|
Packit |
292bd0 |
- The parser now has error recovery and consistent error line numbers
|
|
Packit |
292bd0 |
- The parser now accepts "in rule" actions and generates pseudo
|
|
Packit |
292bd0 |
empty rules to reduce, named @x-y, where x is a sequential
|
|
Packit |
292bd0 |
number and y the 'dot position' in the rule for the driver
|
|
Packit |
292bd0 |
to know how many parameters to pass to semantic action sub
|
|
Packit |
292bd0 |
- Add "in rule" actions handling in Driver.pm
|
|
Packit |
292bd0 |
- Empty rhs need not be the first one anymore
|
|
Packit |
292bd0 |
- Warning if more than one empty rhs for a given lhs
|
|
Packit |
292bd0 |
0.08 Fri Jul 10 22:04:31 GMT 1998
|
|
Packit |
292bd0 |
- Changed 'print STDERR' to 'warn' in parser.
|
|
Packit |
292bd0 |
- Use of literal 'error' produces a warning and is treated as
|
|
Packit |
292bd0 |
the error token
|
|
Packit |
292bd0 |
- Add prefix 'YY' before each parser object methods to avoid
|
|
Packit |
292bd0 |
clashes with user written methods
|
|
Packit |
292bd0 |
- Renamed YYUserData to YYData (shorter and more consistent with
|
|
Packit |
292bd0 |
other methods names)
|
|
Packit |
292bd0 |
- Renamed YYLeftVal to YYSemval for same reasons
|
|
Packit |
292bd0 |
- Modified Driver.pm so Semval(-n..n) reacts like $-n..$n in yacc
|
|
Packit |
292bd0 |
0.09 Never released
|
|
Packit |
292bd0 |
- Changed test suite to 't/' style and add base tests for semantic
|
|
Packit |
292bd0 |
actions/values and associativity tests
|
|
Packit |
292bd0 |
- Check code to be (almost) Perl's -w compatible
|
|
Packit |
292bd0 |
- Updates to pod section in Yapp.pm reflecting most of those changes
|
|
Packit |
292bd0 |
0.10 Mon Jul 13 20:53:40 GMT 1998
|
|
Packit |
292bd0 |
- Cosmetic changes
|
|
Packit |
292bd0 |
0.11 Wed Jul 15 19:46:17 GMT 1998
|
|
Packit |
292bd0 |
- Renamed Yapp::Parse parameters with a leading yy
|
|
Packit |
292bd0 |
- Updated Yapp.pm pod section
|
|
Packit |
292bd0 |
0.12 Tue Jul 21 22:34:00 GMT 1998
|
|
Packit |
292bd0 |
0.13 Never released. (I'm not supersticious, but who knows...8-))
|
|
Packit |
292bd0 |
- Renaming to Parse::Yapp for better CPAN entry...
|
|
Packit |
292bd0 |
0.14 Wed Jul 29 21:43:03 GMT 1998
|
|
Packit |
292bd0 |
- Doc change: empty token is '', not undef (perl -w complains otherwise)
|
|
Packit |
292bd0 |
- Bug in _ReduceGrammar: used $ruleno instead of $#{$grammar{RULES}}
|
|
Packit |
292bd0 |
making no-terminal pointing to wrong rhs if useless rules.
|
|
Packit |
292bd0 |
0.15 Mon Aug 17 11:39:01 CEST 1998
|
|
Packit |
292bd0 |
- YappParse.yp modified to allow empty tail section (not even \n)
|
|
Packit |
292bd0 |
- YappParse.yp modified to diagnose lack of rules in grammar section
|
|
Packit |
292bd0 |
- Driver.pm has been modified so there is no performance impact at
|
|
Packit |
292bd0 |
loading when debugging is not used and to insure thread safety at
|
|
Packit |
292bd0 |
runtime
|
|
Packit |
292bd0 |
- Output.pm can now include driver code into the parser module to
|
|
Packit |
292bd0 |
make it 'standalone'
|
|
Packit |
292bd0 |
- Copyright notice in Driver has been changed to reflect its use
|
|
Packit |
292bd0 |
if included in a standalone parser
|
|
Packit |
292bd0 |
- A -s option has been added to yapp.pl to generate standalone parsers
|
|
Packit |
292bd0 |
- Usage in yapp.pl reflects this new option
|
|
Packit |
292bd0 |
- Updated Yapp.pm pod to add Standalone Parsers item
|
|
Packit |
292bd0 |
0.16 Sun Oct 25 12:36:05 CET 1998
|
|
Packit |
292bd0 |
- Output.pm modified not to use DATA handle, which seems broken on windows
|
|
Packit |
292bd0 |
systems when Parse::Yapp module is untarred and Output.pm hasn't its \n
|
|
Packit |
292bd0 |
converted to \r\n pairs.
|
|
Packit |
292bd0 |
- Added the %expect declaration, a la bison
|
|
Packit |
292bd0 |
- Updated Yapp.pm pod to reflect this new option
|
|
Packit |
292bd0 |
- The core of Parse::Yapp seems very stable now so I change the status from
|
|
Packit |
292bd0 |
alpha to beta and jump to version 0.20 directly.
|
|
Packit |
292bd0 |
0.20 Sun Dec 20 16:13:21 CET 1998
|
|
Packit |
292bd0 |
- Added YYExpect method in Parse/Yapp/Driver.pm
|
|
Packit |
292bd0 |
- Updated Yapp.pm pod to reflect this new method
|
|
Packit |
292bd0 |
- Modified Makefile.PL for using current Parse::Yapp version if recompiling
|
|
Packit |
292bd0 |
Parse/Yapp/Parse.pm from YappParse.yp ( $(PERL) -I. )
|
|
Packit |
292bd0 |
- Modified yapp.pl to add -V option and make output default to final name
|
|
Packit |
292bd0 |
of package, if -m option is specified. Usage updated.
|
|
Packit |
292bd0 |
- Added missing $@ check after eval of debugging driver.
|
|
Packit |
292bd0 |
0.21 Thu Dec 24 17:55:47 GMT 1998
|
|
Packit |
292bd0 |
- Corrected a weird bug in Lalr.pm (_SolveConflicts & _SetDefaults) about
|
|
Packit |
292bd0 |
shift/reduce conflicts on non-associative tokens
|
|
Packit |
292bd0 |
- Added a test in base.t to check non-associative conflicts and error
|
|
Packit |
292bd0 |
token handling
|
|
Packit |
292bd0 |
- Added some doc to explain YYExpect can include YYCurtok when non-associ-
|
|
Packit |
292bd0 |
ative errors happen
|
|
Packit |
292bd0 |
0.22 Wed Mar 10 17:03:39 CET 1999
|
|
Packit |
292bd0 |
- Moved Parse path tree under lib to be conformant with standard Perl
|
|
Packit |
292bd0 |
modules distributions
|
|
Packit |
292bd0 |
- Added Parse::Yapp::Options class as parent of Parse::Yapp::Grammar
|
|
Packit |
292bd0 |
to handle various options.
|
|
Packit |
292bd0 |
- As the Output method is not really 'public' yet, it now takes its
|
|
Packit |
292bd0 |
arguments as hash list, like YYParse. Can break code of people not
|
|
Packit |
292bd0 |
using the yapp.pl front-end.
|
|
Packit |
292bd0 |
Of course, its arguments are handled by Parse::Yapp::Options
|
|
Packit |
292bd0 |
- Added #line "inputfile" trace in generated grammar by default for input
|
|
Packit |
292bd0 |
source line numbers (obvious reason for adding that :-).
|
|
Packit |
292bd0 |
- Added language, linenumbers, inputfile, classname, standalone and input
|
|
Packit |
292bd0 |
options which default to ( 'Perl', 1, undef, 'Parser', 0, undef )
|
|
Packit |
292bd0 |
- Modified yapp.pl for new parameter list
|
|
Packit |
292bd0 |
- Idem for t/base.t and t/calc.t
|
|
Packit |
292bd0 |
- Modified Grammar.pm so it uses linenumbers option to know it must output
|
|
Packit |
292bd0 |
line numbers and inputfile as the filename. If inputfile is undef, then
|
|
Packit |
292bd0 |
use 'unkown'.
|
|
Packit |
292bd0 |
- Added a new flag -n to yapp.pl to disable line numbers in parser output
|
|
Packit |
292bd0 |
- Renamed yapp.pl to yapp (bored of typing .pl)
|
|
Packit |
292bd0 |
- Wrote pod for yapp frontend (so now there's a man 1 page !)
|
|
Packit |
292bd0 |
- Added article in copyright notice when using the standalone parser option
|
|
Packit |
292bd0 |
0.30 Sat Apr 3 15:36:58 CEST 1999
|
|
Packit |
292bd0 |
- Corrected a silly bug in yapp front-end, calling Output method with
|
|
Packit |
292bd0 |
inputfile parameter, which was already done with the constructor
|
|
Packit |
292bd0 |
- Change to yapp frontend so the F<*.output> file goes to the same
|
|
Packit |
292bd0 |
directory than the F<*.yp> source file
|
|
Packit |
292bd0 |
- Corrected Head method in Parse::Yapp::Grammar so it returns '' if there
|
|
Packit |
292bd0 |
is no header code, to avoid a warning with perl's -w switch
|
|
Packit |
292bd0 |
- Same for Tail method, so no line number is output if there is no trailer
|
|
Packit |
292bd0 |
code
|
|
Packit |
292bd0 |
- Corrected a bug in Grammar.pm, to make useful rules useless if their lhs
|
|
Packit |
292bd0 |
are not reachable.
|
|
Packit |
292bd0 |
0.31 Fri May 7 21:06:32 CEST 1999
|
|
Packit |
292bd0 |
- Won some milliseconds in Driver.pm by not calling an anonymous sub if
|
|
Packit |
292bd0 |
there is no semantic action: just get the first semantic value as result
|
|
Packit |
292bd0 |
- Added a patch from Andy Wardley (thanks) which allow people to specify
|
|
Packit |
292bd0 |
their own template rather than the standard one from Output.pm
|
|
Packit |
292bd0 |
- Added option C<-b> to yapp to specify a 'shebang'. If value is an empty
|
|
Packit |
292bd0 |
string, $Config{perlpath} is used.
|
|
Packit |
292bd0 |
1.00 Wed Oct 20 17:52:38 CEST 1999
|
|
Packit |
292bd0 |
- Corrected a bug in Options.pm to have it run with Perl 5.6.0
|
|
Packit |
292bd0 |
1.01 Tue Mar 28 18:50:19 CEST 2000
|
|
Packit |
292bd0 |
- In YappParse.yp, if declaring a token with %left/%right/%nonassoc and
|
|
Packit |
292bd0 |
later redefining it with token lost precedence/associativity. Now, it
|
|
Packit |
292bd0 |
emits a warning
|
|
Packit |
292bd0 |
- In Lalr.pm, _FirstSfx, incorrectly looped when epsilon was in firstset
|
|
Packit |
292bd0 |
instead of beeing nullable (this one was weird)
|
|
Packit |
292bd0 |
- In Driver.pm, check for a call to YYErrok after calling error routine
|
|
Packit |
292bd0 |
to abort error recovery and continue normal parsing
|
|
Packit |
292bd0 |
- New method YYLexer added in Driver.pm, to get a reference to the lexer
|
|
Packit |
292bd0 |
routine
|
|
Packit |
292bd0 |
- In Driver.pm, $check variable was not always cleaned up
|
|
Packit |
292bd0 |
1.02 Mon May 1 13:42:03 CEST 2000
|
|
Packit |
292bd0 |
- English corrections in README file (thanks to Donald Lancon)
|
|
Packit |
292bd0 |
- New email address
|
|
Packit |
292bd0 |
- Updated copyright boundaries
|
|
Packit |
292bd0 |
- Various cleanups in Grammar.pm and Lalr.pm
|
|
Packit |
292bd0 |
1.03 Sun Nov 5 13:14:49 CEST 2000
|
|
Packit |
292bd0 |
- In Lalr.pm, _Preds, recursivity removed
|
|
Packit |
292bd0 |
- English corrections in Parse::Yapp pod section (thanks to Julian Trudy)
|
|
Packit |
292bd0 |
- Updated copyright boundaries
|
|
Packit |
292bd0 |
- Stress test added (compile and check a full C++ grammar)
|
|
Packit |
292bd0 |
1.04 Mon Feb 12 16:46:37 CET 2001
|
|
Packit |
292bd0 |
- Bug correction in YappParse.yp _Lexer sub to accept '\\' literals
|
|
Packit |
292bd0 |
(Thanks to Denis Barbier to catch this one)
|
|
Packit |
292bd0 |
1.05 Sun Nov 4 20:32:32 CET 2001
|
|
Packit |
292bd0 |
1.06 Wed Jun 14 2017
|
|
Packit |
292bd0 |
- First Release In Over 15 Years,
|
|
Packit |
292bd0 |
How's That For Long-Term Stability?!? :-)
|
|
Packit |
292bd0 |
- Bug Fix, Unescaped Left Curly Braces { In Regular Expressions,
|
|
Packit |
292bd0 |
Fatal Since Perl v5.25.1, Minor Changes In YappParse.yp & Parse.pm
|
|
Packit |
292bd0 |
- Typo Fixes, POD Spelling & Syntax
|
|
Packit |
292bd0 |
- Copyright Assignment Documents, Desarmenien To Braswell
|
|
Packit |
292bd0 |
1.20 Wed Jun 14 2017
|
|
Packit |
292bd0 |
- Bug Fix, CPAN Version Dependencies Failure,
|
|
Packit |
292bd0 |
Enable Module Version In Parse::Yapp,
|
|
Packit |
292bd0 |
Not Just Distribution Version In Parse::Yapp::Driver
|
|
Packit |
292bd0 |
- Bump Version
|
|
Packit |
292bd0 |
1.21 Fri Aug 04 2017
|
|
Packit |
292bd0 |
- Typo Fixes, POD Spelling (thanks to Gregor Herrmann)
|
|
Packit |
292bd0 |
- Bug Fix, Missing POD Encoding (thanks to Gregor Herrmann)
|
|
Packit |
292bd0 |
|