1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
Source: funcparserlib
Priority: optional
Maintainer: Kouhei Maeda <mkouhei@palmtb.net>
Build-Depends: debhelper (>= 8.0.0),
dh-python,
python-all,
python-setuptools,
python3-all,
python3-setuptools,
python-nose,
python3-nose
Standards-Version: 3.9.8
Section: python
X-Python-Version: 2.7
X-Python3-Version: >=3.2
Homepage: https://github.com/vlasovskikh/funcparserlib
Package: python-funcparserlib
Architecture: all
Depends: ${misc:Depends}, ${python:Depends}
Description: Recursive descent parsing library based on functional combinators
Parser combinators are just higher-order functions that take parsers as
their arguments and return them as result values. Parser combinators are:
.
First-class values. Extremely composable. Tend to make the code quite compact.
Resemble the readable notation of xBNF grammars.
.
Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that
it's very easy to write them without thinking about look-aheads and all that
hardcore parsing stuff. But the recursive descent parsing is a rather slow
method compared to LL(k) or LR(k) algorithms.
.
So the primary domain for funcparserlib is parsing little languages or external
DSLs (domain specific languages).
.
The library itself is very small. Its source code is only 0.5 KLOC, with lots
of comments included. It features the longest parsed prefix error reporting,
as well as a tiny lexer generator for token position tracking.
Package: python3-funcparserlib
Architecture: all
Depends: ${misc:Depends}, ${python3:Depends}
Description: Recursive descent parsing library for python3
For python3.
Parser combinators are just higher-order functions that take parsers as
their arguments and return them as result values. Parser combinators are:
.
First-class values. Extremely composable. Tend to make the code quite compact.
Resemble the readable notation of xBNF grammars.
.
Parsers made with funcparserlib are pure-Python LL(*) parsers. It means that
it's very easy to write them without thinking about look-aheads and all that
hardcore parsing stuff. But the recursive descent parsing is a rather slow
method compared to LL(k) or LR(k) algorithms.
.
So the primary domain for funcparserlib is parsing little languages or external
DSLs (domain specific languages).
.
The library itself is very small. Its source code is only 0.5 KLOC, with lots
of comments included. It features the longest parsed prefix error reporting,
as well as a tiny lexer generator for token position tracking.
|