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.50.5-cp313-abi3-win_amd64.whl (1.9 MB view details)

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.50.5-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.50.5-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.50.5-cp313-abi3-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.13+macOS 11.0+ ARM64

panproto_grammars_functional-0.50.5-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.50.5-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.5-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 d0b2599683e902c07acb2f61e3f3a63bbfc4679745f8f95e72e561924dbd9c36
MD5 0d9e4dbd3ad2d9c4801c1e3fd0662dc2
BLAKE2b-256 21872535adaeb0e2a942bff63cf4448f95d4071c527d61ad64a2e60078782f4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.50.5-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.50.5-cp313-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.5-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 69da58f95fd9de90eb98da1c8abeabe7ea79df48ec39be66bead5d877f7461d6
MD5 2a4200e2512734a4450c0ecfb55c836d
BLAKE2b-256 0a24cba26f888f93a25e7739d0840761d0776463b54668a6290bd74c2cb4e95f

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.50.5-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.50.5-cp313-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.5-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7a1835ab8997e63c26e0c7d851781b9775c215b8a5dda676e58a3c7fff32e870
MD5 cf446ad8da8653d72ee08accbfb83712
BLAKE2b-256 3419552af17197304d605090c2f2ad3c419371ec98288397cd9ac569d09a7513

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.50.5-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.50.5-cp313-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.5-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e2ef515517777c3c6368d34f140405446240e07546d1e8649934e80ae7d47d96
MD5 332fe8e89e3e09d737d386393c1deb25
BLAKE2b-256 ff1a25f5da943462f93ebbc439c98c77f4d3c4dd3bbe2ae166004d4d29023a57

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.50.5-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.50.5-cp313-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.5-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7fa54b080ca4b062b9c2c051bb436cbd9376d74a29dcbf978a54560ee683848a
MD5 6c68bd39f52e6a0fadd3dbbe4bafa449
BLAKE2b-256 d0a009e8e5af6e56889fd99a3aea46fa1d0db46bbeb3ddfdd6dca3efd0595836

See more details on using hashes here.

Provenance

The following attestation bundles were made for panproto_grammars_functional-0.50.5-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