devel/py-parsley 1.3_1 FreeBSD
Parsing and pattern matching made easy
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- License
- MIT
- Categories
- devel, python
- Package size
- 198.9 KiB, 2053.8 KiB installed
Description
Parsley is a parsing library for people who find parsers scary or annoying. I wrote it because I wanted to parse a programming language, and tools like PLY or ANTLR or Bison were very hard to understand and integrate into my Python code. Most parser generators are based on LL or LR parsing algorithms that compile to big state machine tables. It was like I had to wake up a different section of my brain to understand or work on grammar rules.
Parsley, like pyparsing and ZestyParser, uses the PEG algorithm, so each expression in the grammar rules works like a Python expression. In particular, alternatives are evaluated in order, unlike table-driven parsers such as yacc, bison or PLY.
Parsley is an implementation of OMeta, an object-oriented pattern-matching language developed by Alessandro Warth.
In the other systems
| System | Port | Version |
|---|---|---|
| FreeBSD | devel/py-parsley | 1.3_1 |
| DragonFly | devel/py-parsley | 1.3_1 |
| HardenedBSD | devel/py-parsley | 1.3_1 |
| GhostBSD | devel/py-parsley | 1.3_1 |
Install
Binary package:
pkg install py312-parsley
From the ports tree:
cd /usr/ports/devel/py-parsley/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= py312-parsley>0:devel/py-parsley
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 1.3_1 | 1.3_1 | 1.3 | 1.3_1 | 1.3_1 |
| FreeBSD:14:quarterly | 1.3_1 | 1.3_1 | n/a | 1.3_1 | 1.3_1 |
| FreeBSD:15:latest | 1.3_1 | 1.3_1 | n/a | 1.3_1 | 1.3_1 |
| FreeBSD:15:quarterly | 1.3_1 | 1.3_1 | n/a | n/a | n/a |
| FreeBSD:16:latest | 1.3_1 | 1.3_1 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
As this port's Makefile names them.
Build 2
${PYTHON_PKGNAMEPREFIX}setuptools>=0: devel/py-setuptools${PYTHON_PKGNAMEPREFIX}wheel>=0: devel/py-wheel
The full lists below include those, and their dependencies in turn.
Build dependencies 16
Run dependencies 7
Required by 2
Configuration
No options to configure.
- USES
- python
- Service scripts
- none
Files
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| Parsley-1.3.tar.gz | 99616 | 9444278d47161d5f2be76a767809a3cbe6db4db822f46a4fd7481d4057208d41 |
Master sites 1
- PYPI
Commit history 0
No commits in the history this site was built from.