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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.50.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.50.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.50.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.50.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.50.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f19e48f000e08a904c269bcab7e3121501e8941e1d2e27d3f929abe1ac033522
MD5 2f5556e3b86f482968bf0bfa2d106826
BLAKE2b-256 407d35c6c6c6af00f96978a620faf282edd10fcc942d01cf4748b23c545592fb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5b4eca326708854ca41eb4de1b21f38e877377f4d7613138340daf71b3e2a256
MD5 1b92d4d3a6f89ca77095504d129ddc69
BLAKE2b-256 999ab4f8393404ba977265e1cdf6f6da140db9833bc78619f5244f159f8540d2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7e4829e365154b539e948d1a78955724ce29d5a36ec6acf5e04d12a4c68db3cb
MD5 dd60e8ea9990fb37a9ca6e7f67a56f2d
BLAKE2b-256 1f840e9d6353ceec11fd20ddff50fe3a6e935531ea551a4f9af39d511d5eb50b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22c7bc4dda8b9e689ba38878f3cd59d63924fc240685e7cb14175f9b84974827
MD5 fbbc0df146248a3f9960d72be8a7d450
BLAKE2b-256 08bbedde9896db48d522a18094fe1a892d617dd77dc566237f58e4d1216d6c54

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1b390c7dc50579552a7f4b6bfd62c2935cbe3fae4f5b3cb7416bf8c2ebc5527e
MD5 0a434b1b817d06dedb4c202b295931fc
BLAKE2b-256 42cb7422a0a122b06b13483bbf60dcb1581258efd5b5b1020b654cff185ae35a

See more details on using hashes here.

Provenance

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