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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.48.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.48.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.48.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.48.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.48.7-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.7-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 456ebc75181efb8ef8480926f035bb7f0e3718306b47a519d649f4996445f7ae
MD5 7a675da77fba7aece3d1957611f470e3
BLAKE2b-256 4fd1ad4e2f08448c77fd577951d2ac638b2786473af6d6e2f899d40b443cc96f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.7-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1ead67a98c14e6a775a7e4ab89b74e8e1f53eef4670dfefb6f3c979abedf582c
MD5 9eb6f9ff3914009ded024d5d281c9d0a
BLAKE2b-256 3ad507ba9797d2dc79f88eb8deb8d4699c5e1b7d825f305517bfa9984baf3199

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.7-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b119dc29bff23f98a4bc900ed5163f1f6bee24be5f9e783fad9db19b198871b8
MD5 51857b260d435fbe753fd0d424f5e239
BLAKE2b-256 55836f162fcb3a24db4744de06f57ccf5be3834e082d6411f3c6bc6410d8847c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.7-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99e462a89896f7e9fcc241cf064cea84aefd8b269237c7974aa182d8360f5c39
MD5 3d24ab813c1f99e06e610cf2bcf12549
BLAKE2b-256 b8a41095f26fd825231b0239fc49665d692dd6f9752236f9755c310a13dacd15

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.7-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8b98d07e0335faa0a2eb3f7d6b8d0b4ef42b4d00d51c96242331cab9927e9066
MD5 ca068d214f82c71bd17f0976649e0cb7
BLAKE2b-256 f11007fc3ab8b6241ec7342ddb62f4c542d027566c991ce4774c245e10ec5aae

See more details on using hashes here.

Provenance

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