123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- %define ver 0.3.5
- %define rel 1
- Summary: Recursive descent parsing library for Python based on functional combinators
- Name: python-funcparserlib
- Version: %{ver}
- Release: %{rel}%{?_dist_release}
- License: MIT License
- Group: Development/Libraries
- URL: http://code.google.com/p/funcparserlib/
- Source0:http://pypi.python.org/packages/source/f/funcparserlib/funcparserlib-%{version}.tar.gz
- BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
- BuildArch: noarch
- BuildRequires: python-devel
- Requires: python
- Vendor: Project Vine
- Distribution: Vine Linux
- %description
- 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).
- %prep
- %setup -q -n funcparserlib-%{ver}
- %build
- %__python setup.py build
- %install
- %__rm -rf %{buildroot}
- %__python setup.py install --skip-build --root %{buildroot}
- %clean
- %__rm -rf %{buildroot}
- %files
- %defattr(-,root,root,-)
- %doc CHANGES LICENSE README doc examples
- %{python_sitelib}/funcparserlib-%{ver}-py*.egg-info
- %{python_sitelib}/funcparserlib
- %changelog
- * Mon May 16 2011 IWAI, Masaharu <iwai@alib.jp> 0.3.5-1
- - Initial build.
|