Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Kiuatan

CI

Kiuatan ("horse" or "pony" in Chinook Jargon) is a library for building and running parsers in the Pony programming language.

  • Kiuatan uses Parsing Expression Grammar semantics, which means:
  • Choices are ordered, i.e. the parser will always try to parse alternatives in the order they are declared.
    • Sequences are greedy, i.e. the parser will not backtrack from the end of a sequence.
    • You can use positive and negative lookahead that does not advance the match position to constrain greedy sequences.
    • Parsers do not backtrack from successful choices.
  • Kiuatan parsers are "packrat" parsers; they memoize intermediate results, resulting in linear-time parsing.
  • Parsers use Mederios et al's algorithm to handle unlimited left-recursion.

Obtaining Kiuatan

Corral

The easiest way to incorporate Kiuatan into your Pony project is to use Pony Corral. Once you have it installed, cd to your project's directory and type:

corral add github kulibali/kiuatan

This will add the library to your project. You can then build your project with something like:

corral fetch
corral run -- ponyc .

Git

You can clone and build Kiuatan directly from GitHub:

git clone https://github.com/kulibali/kiuatan.git
cd kiuatan
make && make test

To use Kiuatan in a project you will need to add kiuatan/kiuatan to your PONYPATH environment variable.

Documentation

Documentation is here.

Example

See the calc example for a sample of how to define and use a grammar for Kiuatan.

You can’t perform that action at this time.