summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
Diffstat (limited to 'devel')
-rw-r--r--devel/py-funcparserlib/DESCR18
-rw-r--r--devel/py-funcparserlib/Makefile19
-rw-r--r--devel/py-funcparserlib/PLIST14
-rw-r--r--devel/py-funcparserlib/distinfo5
4 files changed, 56 insertions, 0 deletions
diff --git a/devel/py-funcparserlib/DESCR b/devel/py-funcparserlib/DESCR
new file mode 100644
index 00000000000..3eea2e63811
--- /dev/null
+++ b/devel/py-funcparserlib/DESCR
@@ -0,0 +1,18 @@
+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.
diff --git a/devel/py-funcparserlib/Makefile b/devel/py-funcparserlib/Makefile
new file mode 100644
index 00000000000..fe814a399c1
--- /dev/null
+++ b/devel/py-funcparserlib/Makefile
@@ -0,0 +1,19 @@
+# $NetBSD: Makefile,v 1.1.1.1 2011/07/15 13:34:02 obache Exp $
+#
+
+DISTNAME= funcparserlib-0.3.5
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+CATEGORIES= devel
+MASTER_SITES= http://pypi.python.org/packages/source/f/funcparserlib/
+
+MAINTAINER= obache@NetBSD.org
+HOMEPAGE= http://code.google.com/p/funcparserlib/
+COMMENT= Recursive descent parsing library based on functional combinators
+LICENSE= mit
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+USE_LANGUAGES= # none
+
+.include "../../lang/python/distutils.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/py-funcparserlib/PLIST b/devel/py-funcparserlib/PLIST
new file mode 100644
index 00000000000..7d3fa956e61
--- /dev/null
+++ b/devel/py-funcparserlib/PLIST
@@ -0,0 +1,14 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2011/07/15 13:34:02 obache Exp $
+${PLIST.eggfile}${PYSITELIB}/${EGG_FILE}
+${PYSITELIB}/funcparserlib/__init__.py
+${PYSITELIB}/funcparserlib/__init__.pyc
+${PYSITELIB}/funcparserlib/__init__.pyo
+${PYSITELIB}/funcparserlib/lexer.py
+${PYSITELIB}/funcparserlib/lexer.pyc
+${PYSITELIB}/funcparserlib/lexer.pyo
+${PYSITELIB}/funcparserlib/parser.py
+${PYSITELIB}/funcparserlib/parser.pyc
+${PYSITELIB}/funcparserlib/parser.pyo
+${PYSITELIB}/funcparserlib/util.py
+${PYSITELIB}/funcparserlib/util.pyc
+${PYSITELIB}/funcparserlib/util.pyo
diff --git a/devel/py-funcparserlib/distinfo b/devel/py-funcparserlib/distinfo
new file mode 100644
index 00000000000..3f3df3da331
--- /dev/null
+++ b/devel/py-funcparserlib/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2011/07/15 13:34:02 obache Exp $
+
+SHA1 (funcparserlib-0.3.5.tar.gz) = 030a0689f5e7111ede49491f51e90fa641711fae
+RMD160 (funcparserlib-0.3.5.tar.gz) = 598f16e4a4a3b57c311898912b6e26058182c91e
+Size (funcparserlib-0.3.5.tar.gz) = 33117 bytes