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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.52.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.52.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.52.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.52.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.52.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cf4d0362040f59b844d53748c5b1add96ced1ea3a8f3aa0b9a3a51c30be3014f
MD5 3160f27b29d198241c9b96ff005579ef
BLAKE2b-256 c4bf2f868eba1bed9bc49be21c6cc76bd7ef96642fcc06006fcb35840c9983cb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0cc48e81d8b37d54a6b7ddbb53126d35d582be62a1b749ff2394feb4c52fee6b
MD5 d1eb979b3d232ff62e704ab28fdd8c0a
BLAKE2b-256 edfbdb899b0f9bf11629bee70413c4486e7ad6c03cc9e3f34a5e7b94fca339dc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b14ad25d4ef828842b389b3924a527b212d6284700dbfd77140a42f1dc54387d
MD5 0fc042bc275370ba5645d5640df093dd
BLAKE2b-256 62ec92ba25d4200f74caa9d095275986a5d8b1375a6a641fe515d3be812e25ac

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4ebc09fa31f44aea056d13d9c6dcb54d77ad400dadbdc29c6f9de9ca83cd282f
MD5 ae42f58220844017af6caa36706fb4a6
BLAKE2b-256 9d6304c7ded34f7f9310719f8fe63f3433b63f9266647686fa58de7138aee477

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b49aeef12dd5c1dd05a765a0e2ce40cbfe5813bc3a8fad2c2592a6a157b7e478
MD5 01dac611e6a7bc8f163b44b1299c1d25
BLAKE2b-256 a5381338389d40fe59e00aa4dad3c7d983dbd5e5c4987cd9c875b4e5696f0787

See more details on using hashes here.

Provenance

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