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

Uploaded CPython 3.13+Windows x86-64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.7-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 4365753644617bebbade59f627abe0294481fa5c72c12c3a971ee5071426c809
MD5 9c290a90469a0a3445fe7dffeff5b72e
BLAKE2b-256 da7b95a64a8122382e491c58c5011b3ed0c1c18cbe90a4ca62dab4d06ee40e3b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.7-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ac1f50e93620cc98f5d7f067bd834dcf031eb850e4a039d7e4180192c4ebdfad
MD5 07a8038f60e448d304cc0ee2acadcdb5
BLAKE2b-256 ed196e6ae9232c30408498e71c0c30a8fb4af933fc4276782a45fde7c1e72cb0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.7-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 64145229cb29d9f83b8a7f476217061dd28775d3d9110f421c010336ee8a2534
MD5 eb7932dbf587fcfde72347d600d832a1
BLAKE2b-256 abcf9a48b3b098325831cd77c66e5363500d0ae852eaf66b3cf0e5206829b867

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.7-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00bdd75ebd95d08e386d430fc916afaa57cc6db538d8201d52b65cc4d82c692f
MD5 e89c6446fccf1f67606f9e6520261842
BLAKE2b-256 dd8ad8879e8e250a6c1f983d423a2f9516653d967037e9794a2186364e070591

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.7-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 994e2e9942be5c0e12c41621245bb9c679361b7810182a4693ca88c6a63a7aa0
MD5 7550df9bae770f4cef6c7ce26cbe5b62
BLAKE2b-256 f89bba75c81c45d3db300d68ea7bf8f5f295962f11b77b3056175398a62f9ad2

See more details on using hashes here.

Provenance

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