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

Uploaded CPython 3.13+Windows x86-64

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

Uploaded CPython 3.13+macOS 11.0+ ARM64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.46.1-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cebeaa0739acc03500690a66cf07c195d35ae09ef538db7880ad9dcbee4cfbee
MD5 d65708e54545c16388cbc975818eab72
BLAKE2b-256 2ae937612d2bee7c19c771291d195502f02af9bf320771075f09a76655e54d5a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.46.1-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9806c430c63c7bb95d02886ded308d9b3c26cbdeb48d7d5bb3e4ef5767868562
MD5 e65b52239dc509bd2f101596d1feacdc
BLAKE2b-256 93e42a67af0fd5e5d06f420c423dd9c8194d1ccfb5fe3dd1033f8ae412c00216

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.46.1-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0710396ecf4d1b8266f2c3ec73742e9558c3a19e8d34565f65fd597038a4ed7a
MD5 8f7f8ffc2c6722a3585545c7905b36a6
BLAKE2b-256 3d85e68a30a56855c679d51fff835d6c73af24f87978a9905551d364b06c1282

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.46.1-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 337d9299fa88199f04a26d3f1fdf79b3514f792cd556d2923acf18d69b80d63d
MD5 37d49788141e8b6e5b28112a1fc79a10
BLAKE2b-256 d7338ab2a23446f71b79dd4a404734bc043d25433db5fc8e1e5c12f9f966d24a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.46.1-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2d3231aa4b95a0af0d0ba4649ffd67cfed703ed331bf529be161dc030008fe17
MD5 820ef1c6d5fe579c3a61da11b7ec6727
BLAKE2b-256 3a955146cd187a86d91832cb0dda9866b4a763fd47ca6d533672e203bea4b394

See more details on using hashes here.

Provenance

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