Skip to content
This repository was archived by the owner on Jul 26, 2018. It is now read-only.
/ greg Public archive
forked from whymirror/greg

🐏 a recursive-descent parser generator for PEG

Notifications You must be signed in to change notification settings

ooc-lang/greg

This branch is 70 commits ahead of whymirror/greg:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

64d071c · Sep 24, 2016

History

86 Commits
Sep 24, 2016
Feb 27, 2014
Feb 27, 2014
Sep 24, 2016
Sep 6, 2013
Sep 24, 2016
Feb 3, 2014
Mar 8, 2014
Mar 8, 2014
Jun 3, 2016
Jan 11, 2010
Jul 31, 2013

Repository files navigation

greg

greg used to be _why's fork of Ian Piumarta's peg/leg, with the following differences:

  • Re-entrant
  • Some bug fixes

Since then, better error handling and other various features have been added.

Links

The most comprehensive example of greg usage is in nagaqueen, an ooc grammar, used in rock, an ooc compiler written in ooc.

Build instructions

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 regenerate greg.c using greg itself, then run make again to build it.

Contributor guidelines

  • GitHub pull requests are the preferred way to submit contributions.
  • Don't modify greg.c, instead, modify greg.g and 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.

License

peg/leg is copyright (c) 2007 by Ian Piumarta released under an MIT license. As is greg.

About

🐏 a recursive-descent parser generator for PEG

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 91.4%
  • GAP 6.8%
  • Other 1.8%