Skip to main content

panproto grammar pack: functional languages (Haskell, OCaml, Elm, Gleam, Erlang, Elixir, PureScript, F#, Clojure, Scheme, Racket)

Project description

panproto-grammars-functional

PyPI Python License: MIT

Companion grammar pack for panproto shipping tree-sitter grammars for functional-language source: Haskell, OCaml, Elm, Gleam, Erlang, Elixir, PureScript, F#, Clojure, Scheme, and Racket.

Companion packs are how the Python wheel adds tree-sitter grammars without bloating the core: panproto itself bundles only the 11-language group-core baseline, and packs like this one extend that surface as separate pip-installable wheels. Installing this package makes its grammars available to panproto.AstParserRegistry() automatically.

Status

Pre-1.0 with arbitrary breaking changes between minor versions. The pack version tracks the workspace panproto version on every release; consumers should pin both to the same minor (e.g. panproto>=0.45,<0.46 and panproto-grammars-functional>=0.45,<0.46).

Python 3.13+ required.

Installation

pip install panproto-grammars-functional

Wheels are published on PyPI for Linux x86_64 / aarch64, macOS arm64 / x86_64, and Windows x86_64. No Rust toolchain is required.

Pulls in panproto>=0.45 as a runtime dependency. If panproto is not already installed, pip resolves it automatically.

Synopsis

import panproto

reg = panproto.AstParserRegistry()
# The grammars from this pack are now in the registry alongside the
# group-core ones (Python, JavaScript, Rust, ...).
# schema = reg.parse_with_protocol("haskell", b"f x = x", "main.hs")

Nothing to import from this package directly. The architecture is described in bindings/python/README.md.

Languages

Haskell · OCaml · Elm · Gleam · Erlang · Elixir · PureScript · F# · Clojure · Scheme · Racket.

Architecture

Each companion is a separate pyo3 cdylib depending on panproto-grammars with one group-* feature flag. On installation it registers a panproto.grammars entry point that points at its _impl submodule; on construction panproto.AstParserRegistry() walks every such entry point and threads the discovered grammar metadata into the native registry. Cross-cdylib transport uses raw FFI pointers cast to integers; the trust boundary lives on the panproto side.

Source: crates/panproto-grammars-functional on the Rust side, bindings/python-grammars-functional on the Python side.

License

MIT

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

panproto_grammars_functional-0.56.1-cp313-abi3-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13+manylinux: glibc 2.28+ x86-64

panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.13+manylinux: glibc 2.28+ ARM64

panproto_grammars_functional-0.56.1-cp313-abi3-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.13+macOS 11.0+ ARM64

panproto_grammars_functional-0.56.1-cp313-abi3-macosx_10_12_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13+macOS 10.12+ x86-64

File details

Details for the file panproto_grammars_functional-0.56.1-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.1-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ed24a617317e0cfa7c1530b62bb2ef9faea40bfe24d8f56dedbfd1fde44077f4
MD5 cd767f2d2315d78d79c06cdb5cfb5f0c
BLAKE2b-256 e89f58d94992366e6cec622f5ba7e9963f1d3f1f95987cf93c312a187d28f103

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.56.1-cp313-abi3-win_amd64.whl:

Publisher: python-wheels-companions.yml on panproto/panproto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8e6a8867f89483ca339be51b9b63fb5f0054c41811640985fc06f28b465e6ade
MD5 ea4c727f594d5eadf9307f6f5314f873
BLAKE2b-256 e2ae0eb99fb745eaf57752d1eb7bf2aa65c02847f9040413e408307438d38d3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_x86_64.whl:

Publisher: python-wheels-companions.yml on panproto/panproto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e6f666672db18932b62406c010678d6ed6010d58bed46adaa405a142428cc091
MD5 aad386a48f1ce8b697a44eef6c523a1d
BLAKE2b-256 96e6d941bf1380a8838d602ebf41bd32bf870d7f419a68847011918693508f6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.56.1-cp313-abi3-manylinux_2_28_aarch64.whl:

Publisher: python-wheels-companions.yml on panproto/panproto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file panproto_grammars_functional-0.56.1-cp313-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.1-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f01f9060cf86b539b95907f0f26734988942b6b232aa7032e9e410c330c9055
MD5 f0978749817e918b64b33b1d8feb8e57
BLAKE2b-256 48dc0701322d526a6b8eb384cdd0c68b1ff31a993c2f977dcbe7f1defae020f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.56.1-cp313-abi3-macosx_11_0_arm64.whl:

Publisher: python-wheels-companions.yml on panproto/panproto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file panproto_grammars_functional-0.56.1-cp313-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.1-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 48e35b28bf0c6d658c852e6fe29fe1ef6ac89b96a1102d2c5ddff43ab93953fa
MD5 f6f5d6885e1497013b197593f13687d1
BLAKE2b-256 cb6ada0f552d3dfd98bc68f266a24fe2ed2908a6f8b2c1e39faf58caa9529a7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.56.1-cp313-abi3-macosx_10_12_x86_64.whl:

Publisher: python-wheels-companions.yml on panproto/panproto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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