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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.48.8-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.8-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.8-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.8-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.8-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.8-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b5615523543a6abb4d3122e4156506c96bc440a0f8a8880f70d774aa97cf4f9c
MD5 b5bc41d8b37d0d283ba40724069b8c0d
BLAKE2b-256 f2fede9715c519192b7fd96375ba44d1390b624c73cc91650879fe1491e7d909

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.8-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e6a1c909bf77b2bca8cc0357d0a144ea30d722ecda4863a8c3448647be2661e2
MD5 2e1d7d0e3f2fb76f03010855f0011350
BLAKE2b-256 fd87ca0b8cbce2b06497e4d598b3e1ef7a52bc1434a5bfbdfbb27a2b7820a1b4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.8-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6b12074d797675eb8fa42cfbfb25df89e2e9103ba9134d8f341249e769df3fd5
MD5 ac9aefa9c6f56ef0b54291950065ff02
BLAKE2b-256 03702acaef28c5dc1be8171d47cff28d7428f1136dadab068b83ac4a34a9dd37

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.8-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 06f8802c73f83cc90004dcce3aace52f9dbb5b2acf031cb1396b99e9aa76ecc7
MD5 21febf9829b849c12e58429dc6d813cf
BLAKE2b-256 2b3c9e323e2b9d79d971ac13ab36d178273cf435436336166ae39f8e6c666fb9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.8-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3fe0bf06f00e2d892d065b1c0227ba31bca527346d637e9690c35c064aafdb91
MD5 be562ede18c47752b1acb4e219012ff9
BLAKE2b-256 0079769ee73927b7f54e9685640b0129a07c7039229649933d574e9cf547a5f6

See more details on using hashes here.

Provenance

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