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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.47.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.47.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.47.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.47.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.47.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 efdbe24a4dbd2862753e3cb33bd258a300a7188b8f670b2543e78fc8507ae9fd
MD5 296086ec82dde5a41c553a384d1b2786
BLAKE2b-256 c8c6163d212519c14d0a2d1cc348a05060108a58ec87a180833c07cd09cf3f0d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0d6eae0a18ed6e34b5066e5bc7c61bf6da40fe8a38bcde6b2697051cdb7cd691
MD5 c28587218fd91343dfaaca62239f5bb2
BLAKE2b-256 d5112c525f51018c7f5a4cefec0a2dbb595ade5cf3f55cd02aca371aad03b180

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aefffc42e3b6b245b1b2ddeed63cbf3bd4a712baf2c06abbf2c0b648c0b2af8c
MD5 feb154979dc9c9a73c562f0a5b770afb
BLAKE2b-256 f655d9ba280810844580b2b41dd6bb86b402c7f88937721844ee50fd9204d286

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fdd30cac4d6d9e890e99801c4254d69d47d945bbbee5064ed632da5f47b0b1ac
MD5 bcc18d1c7fb32e7646176b9967fda23c
BLAKE2b-256 393dc8f00524cd77707e2722fd8f49ce3d0c55b25e615b4e9da2846e740d0749

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c431b0ec893df9fb52105f258e8bde8984464816397d4034a228d3d8ec2a80cd
MD5 0ee53947d468277e2831a2c730882647
BLAKE2b-256 8f409ebbd2c7fc12c0e1412e56098ee8d53f6aedafcaae9a8bd8ed9deeac5211

See more details on using hashes here.

Provenance

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