Skip to main content

An Earley-Algorithm Context-free grammar Parser Toolkit

Project description

buildstatus Supported Python Versions

SPARK

SPARK stands for Scanning, Parsing, and Rewriting Kit. It uses Jay Earley’s algorithm for parsing context free grammars, and comes with some generic Abstract Syntax Tree routines. There is also a prototype scanner which does its job by combining Python regular expressions.

The original version of this was written by John Aycock for his Ph.d thesis and was described in his 1998 paper: “Compiling Little Languages in Python” at the 7th International Python Conference. The current incarnation of this code is maintained (or not) by Rocky Bernstein.

Note: Earley algorithm parsers are almost linear when given an LR grammar. These are grammars which are left-recursive.

Installation

This uses setup.py, so it follows the standard Python routine:

python setup.py install # may need sudo
# or if you have pyenv:
python setup.py develop

Example

The github example directory has a worked-out examples; Package uncompyle6 uses this and contains a much larger example.

See Also

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spark_parser-1.5.2.tar.gz (112.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

spark_parser-1.5.2-py3.5.egg (30.8 kB view details)

Uploaded Egg

spark_parser-1.5.2-py3.4.egg (31.0 kB view details)

Uploaded Egg

spark_parser-1.5.2-py3.3.egg (31.5 kB view details)

Uploaded Egg

spark_parser-1.5.2-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

spark_parser-1.5.2-py2.7.egg (30.2 kB view details)

Uploaded Egg

spark_parser-1.5.2-py2.6.egg (30.4 kB view details)

Uploaded Egg

spark_parser-1.5.2-py2.5.egg (30.4 kB view details)

Uploaded Egg

spark_parser-1.5.2-py2.4.egg (31.0 kB view details)

Uploaded Egg

spark_parser-1.5.2-py2.3.egg (96.0 kB view details)

Uploaded Egg

spark_parser-1.5.2-py2-none-any.whl (15.9 kB view details)

Uploaded Python 2

File details

Details for the file spark_parser-1.5.2.tar.gz.

File metadata

  • Download URL: spark_parser-1.5.2.tar.gz
  • Upload date:
  • Size: 112.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for spark_parser-1.5.2.tar.gz
Algorithm Hash digest
SHA256 5555bf8261b67d3d3c3ad8f708d25ad5b7f07635e37748457d49f1085f8233a0
MD5 8ef090134281da122fda4627c59bd56d
BLAKE2b-256 6f5ab4089650f437bb239559b8bf8bbb8417b1c90306e32e34ce5f4a62dcf7e0

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py3.5.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py3.5.egg
Algorithm Hash digest
SHA256 ff9070f69f87c88edbd16115730de7f33fb90dd2c874f912e7bfd098d1480739
MD5 e65dcbf7cccb3902184f03816313e0cc
BLAKE2b-256 23f4d3fec19445556209eb231316b5967d6812bdcbb5d1d618137c949db2facc

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py3.4.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py3.4.egg
Algorithm Hash digest
SHA256 5e08aa02dcc8ccdbe4e82877f3a92a9333c049bd03c854e357366f4b74837229
MD5 322aa0ccbf8ac704d2b1085ddbf8c6c5
BLAKE2b-256 6694a9896d366bff93c5451e3a46d09454ac75bd52015871a001d4379984e240

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py3.3.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py3.3.egg
Algorithm Hash digest
SHA256 f7cb7312cfd0fd3f7ca57d7a30997f86b9c02ba3b18bfcce963d2a1d9f184886
MD5 491837fa4f1e81b3b93e70b41454b046
BLAKE2b-256 07a8c4253cd960433a1ae32e765877c604300326d0760c95d9090c6c7983310c

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4c0d20889bf424b4ec921c28a5c6d30618e16a3d62b522364f8b1ffa9b8cb119
MD5 40423d45a9a0a8bf839e7833bd96f158
BLAKE2b-256 2b73d4a3ac394fb1fd94937528e4f3f35a11e7c82483315ec2d980a2978452a2

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2.7.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2.7.egg
Algorithm Hash digest
SHA256 560b470ee1c4ac0c9cd147b245876ab5e77cda75b122a96cb9dd30f4dfd20a9a
MD5 e97fbf0d52ad54ecd2fbc111214a3cc0
BLAKE2b-256 94e63ba3ad41ff05987de8ebcd0227c142e1fe4e62fb9f71092c3ab435f8357e

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2.6.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2.6.egg
Algorithm Hash digest
SHA256 036c76c7d4be31710ce135b90ed9c678f11d777d2cf470a9a89195b472805aa5
MD5 4a3d5a934e8595b5beb9f811756bae4b
BLAKE2b-256 66633f7a2f5444e23bde2203d5f4a4c8424e3c86ae2059d881eeaa1188e9fadd

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2.5.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2.5.egg
Algorithm Hash digest
SHA256 2de57542aedcfa2b588f6856a7b7fa49381c21de6b6a103d6817beb85bbf3656
MD5 e1122c88fc40d361c436fd22a0b8e6d7
BLAKE2b-256 f08d6df75d43c5d25f19615e02f5c4312d384b87dd518661f959b695d01a48ae

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2.4.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2.4.egg
Algorithm Hash digest
SHA256 33d20b9540c4b57b578445604980016a8b9f3f6719d3343acd8af19785fa7d48
MD5 c87eab69011845879c4fabf2b5f7e89c
BLAKE2b-256 300abd1625c742d025596a3cf2fb8ebe40c9dd8ee7042ce1f6ef754f7a74f48c

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2.3.egg.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2.3.egg
Algorithm Hash digest
SHA256 9f1e09fa29956b86ff731b4bad1b15ff65d70c9df0305fbe5016b9ca5a7049f8
MD5 773db18e0b41136fe352c6f0309cc6a1
BLAKE2b-256 97327a3ce50fdf731dfc515f855cb0e652d7b33d7a53c8468999487fd0a1dc07

See more details on using hashes here.

File details

Details for the file spark_parser-1.5.2-py2-none-any.whl.

File metadata

File hashes

Hashes for spark_parser-1.5.2-py2-none-any.whl
Algorithm Hash digest
SHA256 c76aba2f8c733c9314cd106f21cbd4f70a4bd44f661e6dc2f29bb9482e0195e4
MD5 7c546b3f91df5f7df565dd8c8407c57d
BLAKE2b-256 36f1cb64ebe49ea87f714c4223d5a66df5151653b826b02a677519a0562edbb2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page