Skip to main content

A python framework for formal grammars

Project description

pyformlang

Python package pypi Documentation badge

A python library to manipulate formal grammar. In general, it can be used to better understand algorithms in a formal way.

If you use Pyformlang in your project, please cite our paper:

@InProceedings{pyformlang,
author="Romero, Julien",
title="Pyformlang: An Educational Library for Formal Language Manipulation",
booktitle="SIGCSE",
year="2021"
doi = {https://doi.org/10.1145/3408877.3432464}
}

Installation

pip3 install pyformlang

Sources

Most algorithms come from Introduction to Automata Theory, Languages, and Computation (2nd edition) by John E. Hopcroft, Rajeev Motwani and Jeferey D. Ullman.

Indexed grammars come from the original paper Index Grammars - An Extension of Context-free grammars by Alfred V. Aho.

On the implementation of Hopcroft minimization algorithm: Implementation of Hopcroft's Algorithm, Hang Zhou

Intersection CFG/Regex and a better written version

Usage

Please refer to the official documentation: pyformlang.readthedocs.io.

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

pyformlang-1.0.10.tar.gz (95.1 kB view details)

Uploaded Source

Built Distribution

pyformlang-1.0.10-py3-none-any.whl (126.8 kB view details)

Uploaded Python 3

File details

Details for the file pyformlang-1.0.10.tar.gz.

File metadata

  • Download URL: pyformlang-1.0.10.tar.gz
  • Upload date:
  • Size: 95.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for pyformlang-1.0.10.tar.gz
Algorithm Hash digest
SHA256 570b08915220447733753dd0716f537a0d8589aa0f9fa125d7b547872ff1ef6b
MD5 30341dc7ca04e5715dfb653834202313
BLAKE2b-256 c3ef217f895213884db8d684711e96d447acd70d6bc6dde6d89ef6c264684f08

See more details on using hashes here.

File details

Details for the file pyformlang-1.0.10-py3-none-any.whl.

File metadata

  • Download URL: pyformlang-1.0.10-py3-none-any.whl
  • Upload date:
  • Size: 126.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for pyformlang-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 fd347bade2141feb6d29bfb23b90e87107910de8434566124ad42ef375662ceb
MD5 ff061fbb13819d6a6b9dfb9ab8f2f78f
BLAKE2b-256 14e8d02f14c939939d55bf0187537bf5747870bc34e28a0515b15202067ae274

See more details on using hashes here.

Supported by

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