py27-grako - Grammar compiler

Property Value
Distribution NetBSD 7.0
Repository NetBSD i386
Package filename py27-grako-3.99.9.tgz
Package name py27-grako
Package version 3.99.9
Package release -
Package architecture i386
Package type tgz
Category devel python
License modified-bsd
Maintainer -
Download size 1.30 MB
Installed size 6.99 MB
Grako (for grammar compiler) is a tool that takes grammars in a variation of
EBNF as input, and outputs memoizing (Packrat) PEG parsers in Python.
Grako can also compile a grammar stored in a string into a Grammar object that
can be used to parse any given input, much like the re module does with
regular expressions.
Grako is different from other PEG parser generators:
* Generated parsers use Python's very efficient exception-handling system to
backtrack. Grako generated parsers simply assert what must be parsed. There
are no complicated if-then-else sequences for decision making or
backtracking. Memoization allows going over the same input sequence several
times in linear time.
* Positive and negative lookaheads, and the cut element (with its cleaning of
the memoization cache) allow for additional, hand-crafted optimizations at
the grammar level.
* Delegation to Python's re module for lexemes allows for (Perl-like) powerful
and efficient lexical analysis.
* The use of Python's context managers considerably reduces the size of the
generated parsers for code clarity, and enhanced CPU-cache hits.
* Include files, rule inheritance, and rule inclusion give Grako grammars
considerable expressive power.
* Automatic generation of Abstract Syntax Trees and Object Models, along with
Model Walkers and Code Generators make analysis and translation approachable.


Package Version Architecture Repository
py27-grako-3.99.9.tgz 3.99.9 amd64 NetBSD
py27-grako - - -


Name Value
py27-cython >= 0.12.1
py27-setuptools >= 0.8
python27 >= 2.7.1nb2


Type URL
Binary Package py27-grako-3.99.9.tgz
Source Package py27-grako

Install Howto

Install py27-grako tgz package:

# pkg_add py27-grako

See Also

Package Description
py27-graphite-web-0.9.15.tgz Enterprise scalable realtime graphing platform
py27-graphviz-0.10.1.tgz Create and render graph descriptions in DOT language
py27-grappelli_safe-0.5.1.tgz Permanent fork of Grapelli admin skin for Mezzanine
py27-greenlet-0.4.15.tgz Lightweight in-process concurrent programming
py27-gssapi-1.5.1.tgz Low-level and high-level wrappers around GSSAPI C libraries
py27-gstreamer0.10-0.10.22nb4.tgz Python bindings for gstreamer0.10
py27-gstreamer1-1.14.4.tgz Python bindings for gstreamer1
py27-gsutil-4.34.tgz Command line tool for interacting with cloud storage services
py27-gtk2-2.24.0nb26.tgz Python bindings for GTK+2
py27-guessit-3.0.3.tgz Extracts as much information as possible from a video filename
py27-gunicorn-19.9.0.tgz Python WSGI HTTP server
py27-gyp-0.1pre20161117.940a15ee3f1c89f193cb4c19373b3f6e9ad15b95.tgz GYP can Generate Your Projects
py27-h11-0.8.1.tgz Pure-Python, bring-your-own-I/O implementation of HTTP/1.1
py27-h2-3.0.1.tgz HTTP/2 State-Machine based protocol implementation
py27-h5py-2.8.0.tgz Python interface to the HDF5 library