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

Uploaded CPython 3.13+Windows x86-64

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

Uploaded CPython 3.13+macOS 11.0+ ARM64

panproto_grammars_functional-0.47.3-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.47.3-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.3-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 603f4daa54f145f9cc8179198c35884cee77fd2cfb5ad1093ce29bba1eb0c07c
MD5 56c1497f9a4b15e898e81b97dd4f536e
BLAKE2b-256 d404a12454a1592d20872b9d81c3decca2278304ce31791271b0bfd2a6d7a617

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.3-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 043f83e6a77360260b07da2ad538496bdb83032df0ec3e083552d31f9d5c1e9c
MD5 a1cbf02b1ccfa92781d9877ad4407c83
BLAKE2b-256 af085f485d404f73cef15e0dce47b136890434ac1647666604c297c90a92750f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.3-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c9dfd1c52f47e1dc29903f85a089feb8d6c27e5a47e7e9ea76e3b9a5ca98ab9d
MD5 38b6ad1ba71c557a0f0efe767f6afce3
BLAKE2b-256 775e8d1c14cea8f865b33ae62db51e7df62e6e942e024cf8a927a8e66b4010b4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.3-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b120a7e6e168d43f43c9b9ca9b5f046d2ed4ffa70a25f64642ca4baf607686f7
MD5 dd7734b85f0e4c70d1854d80d4ae24e7
BLAKE2b-256 f8aca0ff3dc8d4cd3ca4429158c9895e86d44b0dffcddcc034a2155855e11d77

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.3-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9225dcc749ba433ce0b006ab83c28b008fe0f313b6413949b60f42bd49e04904
MD5 3a1f20245ab5a641d29da7079f6dd5ce
BLAKE2b-256 7e89c75eb7ab68e0131af746159cd3845f91ec687268038f8da79462485eb116

See more details on using hashes here.

Provenance

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