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

Uploaded CPython 3.13+Windows x86-64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.1-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cdbab5b13012d2800b5cca6d371fe1224d80b15adc745c3a800ea78349ee906e
MD5 3b395d4d6d667a1cf0708d3b9db34a82
BLAKE2b-256 5508c6ed9408ebabfeaf9300e367b873b3f012fef6fcaac49c893add2291e00b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.1-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d534a03ef33c6ed3130753836c8908942aa25f31cbb9dc54c406b7f5bb638a01
MD5 d562e917e753541102e52764a2fddc66
BLAKE2b-256 af3e22950ced2b3b2c2d4106f0c1f7f6809155d28fa21da137a3420f6434d033

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.1-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 acaab611f68b178671de89cd3c0108762749161d26cd90a9053b0533264cecf4
MD5 a610c3d20689b476dd5dd6a8d566dab3
BLAKE2b-256 50cc92bcbcbe3b21e219f61ca23e471a6798a4b39a1c3a06a9b0b7def38b0b88

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.1-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c3276f51ff36cb2b10cb5ce2b85cdc7959e35b4860d50d4d168f8b85369399e2
MD5 96ff5c281ec72eb32b6399ee311de0d4
BLAKE2b-256 253a4e7dc7840730cd84a20d5c63838a314f5258a2c93456b05975a9b240b2ac

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.1-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cbd579238ca358d4df3f879564f0a68fcb46b82ffcc5c9bb1b83dcff7ee39953
MD5 b59d4973287c03dd9775f84033026673
BLAKE2b-256 53f89cf01b73a6823dac186d4a839a8c115c09dbc95816b189b81de21649840e

See more details on using hashes here.

Provenance

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