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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.50.2-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.2-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.2-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.2-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.2-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.2-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 da4870943b315e61593b650835263c038aee08f68809500323c18f0ef8440aab
MD5 dcc153873f3ead86a1ff25279975d717
BLAKE2b-256 e6e28fbc3f14d7da3a27e084d43bdbe5f954ad2f9c8ff5c4a352d6bb3972a884

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.2-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 911e91ccb3db3bb865d7e7774982771c4c39a4a230aee1b157c10ff3aa70f6c9
MD5 75572fe2afebcedfef26112b6ed79c2b
BLAKE2b-256 a720078eb1cc29a7b3aff9fc03225496b307506f5928b89ae8c2b09d1732e193

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.2-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cf863a458a536b539772df754fefe0b5bc73a6a3196b10f4cdabb42a98d71cfe
MD5 b90e924fdcb85e9424899844b70eaf09
BLAKE2b-256 3fcfecd7f1fcf1fed1df9254ed0de1f324989965d9bfaa6d0dff5668eb71ea2c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.2-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1db0900c916f7e7e6ca27250697f2ef11d971de51db58b2480581fe71a525522
MD5 a47a310c8130699db8064cc8910521a1
BLAKE2b-256 03ff99f6061466d1f625aa44a466c3e531498b1247ca44b0829cd7c0cf6cfeea

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.50.2-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 13f6e527737d2deca07c9c2c4a49cfcf0cef6cd8b3296b2654346aca7778d166
MD5 58591af0e5f925c574cdfe096857c575
BLAKE2b-256 00d92bfd77ab1cbb8cb2797de699fa328cecd43bf4abf76c1b7c8936b9e713b9

See more details on using hashes here.

Provenance

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