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

Uploaded CPython 3.13+Windows x86-64

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

Uploaded CPython 3.13+macOS 11.0+ ARM64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.49.2-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 5e949225aeb0e6742a80da63abe576caad8b165833d4afa4a32fad01205a1fff
MD5 c1501187f9a6fa5880092cfcde21c25b
BLAKE2b-256 ac374fd2f896a10b5b3175e22c37bc138cce51cebf5726f293aa3030b92e8320

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.49.2-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ee4aa305d6955b5c633a61e575d077f4b11e1262560505b2de891f0011904891
MD5 f897dd21229e28e8d703ad5fa4edbae6
BLAKE2b-256 237d3b09f54dc849bed68f15044328ebff245dd4472e86929eb8003e04b87105

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.49.2-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0118e1b1b1fce46e73038b535fe82e08544af1a19c332bd560f18d352c6be489
MD5 53b3797df76d28b8f1af81b15378abc3
BLAKE2b-256 8b7724604609a32cdbd9440346d0eec90abdd37623cefd1147223379cf3811e2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.49.2-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ddfae713c0e0ba4d268320b9469ba611df2b53807c7351ea10123e95bce43f1f
MD5 ad0cf433375ca40952f38c5c8309a4f5
BLAKE2b-256 bbdb1db0284a7e6b57041f1ea659e40857f9773c6dcc36c3bdfa57afc03e5e5e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.49.2-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6deb5e663f80b4efa8b7d14d01e2204b7455b7412bb89be2ba5bf4e699c881a4
MD5 a2d33247d9d03126417649d3647e4db8
BLAKE2b-256 72e37adb3c24b59707a41b71cdff7f0130d0f195487215b15a10aa89e106b614

See more details on using hashes here.

Provenance

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