greg used to be _why's fork of Ian Piumarta's peg/leg, with the following differences:
- Some bug fixes
Since then, better error handling and other various features have been added.
With a GCC-like compiler,
make should give you a greg executable.
If you modify
greg.g (greg's own grammar is written in LEG), run
make grammar to
greg.c using greg itself, then run
make again to build it.
To build with MSVC you need a getopt implementation such as this one.
- GitHub pull requests are the preferred way to submit contributions.
- Don't modify
greg.c, instead, modify
greg.gand regenerate it as shown above.
- Make sure greg is still self-hosting before you submit your code.
- Major changes warrant a version bump, but they also warrant discussions.
For a list of contributors, see the GitHub contributor graph.
peg/leg is copyright (c) 2007 by Ian Piumarta released under an MIT license. As is greg.