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

Uploaded CPython 3.13+Windows x86-64

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

Uploaded CPython 3.13+macOS 11.0+ ARM64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.54.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7209075890f58a1b66e35e4492808d8dcf0b389ac370c9db1606323f9e5004f4
MD5 9d2fd31d8dc8a1c99fb6a0c5eae6859f
BLAKE2b-256 b0b455f1c877fdaf80b436c8094fd34309bc92c80c9590d66f0ba865ce443d6e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.54.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 992b42ed2fa5dda9397c44f4f51e2347b512b1eda334e4c38bbee550b612b196
MD5 035cd1a417838875cda01a1657b16641
BLAKE2b-256 147c3f6a1cfeb77ea39402e1b389b9b0556739a67d7a2bb3e34a5b43dfc84a46

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.54.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4224abc0748131266e799fd92785b3d2dd749cc8ec0e048a6f05396c7566a45b
MD5 a0e6f037460ae5fd05dfac8e06165a29
BLAKE2b-256 06515040b789fe91231dfa750b2f78ab6c8398e76ad2276dd24e56feb703f4f1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.54.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 251ae7037c119f21148048e37e5ccdf0bdc3651cff4bfa55ffdf471559923acc
MD5 f7cbf01ea2d2d1576a32ea45e5ade88d
BLAKE2b-256 88ad0f1e3972a77925dffe1cfbcd553a2190acfa01339967a77dceb3d3fc8c48

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.54.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 21f10a56fd1506a60eea210ad45f209c8bb231f1018269b5011ca2e951e3d35a
MD5 7e6e8ab152dfc714481946b65fd9bf5c
BLAKE2b-256 0030be74caae6621fc6d114dcb13340e2b37f756c6230cfe751ad5f7d9b59635

See more details on using hashes here.

Provenance

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