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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.56.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.56.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.56.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.56.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.56.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e3991f2d8b570fe069966b8440cf69a401da97d5fb37696976ade2bc2d553992
MD5 06a8378616f5b21c88b4919d9344f918
BLAKE2b-256 b98ba1db9b50900c678f9daad79f6ad9cad9e67076ed8f17ee9c0397ca5f8f99

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5dd4ac3ca3ed959106b411e39180a2401d191e3e48bb62f5aec00e17034e71af
MD5 024ff53276e2794a7db7cfbd8c792434
BLAKE2b-256 fa8abc742b408523f566d5f7aaeaa5ed1a62e95a1effb6ecdad463bf55a9a3bd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a1181deb296dc37c18f6a8c4e222936e9d184c9c90b051bd86b2c73cb0c5424b
MD5 a8485206057006e644b92261847f17c8
BLAKE2b-256 3d5af33e637e37837c132877ac385cdadb0c7bfe5043a249f746a9edb53008f5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8176ccfaaae81fa1b846c053fda92b1ed53ba4f67a0d95997dd5c1da046ffb17
MD5 c217a7bb21c204587f100239d253f665
BLAKE2b-256 aa15b9587a7c18c3be107a9c5c7642513f1d6d59c9a22191c0c1044cc8a8d959

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.56.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 238fea0c956796629bd9c5fdc3aae1e68f90086263924fecc288c55f0edc1a44
MD5 848d6021af62c40f77a106022230ad98
BLAKE2b-256 0ef0a39ac5dac900c525a4d47e4165c72e4a44a8af1d1feb0febeae08594a379

See more details on using hashes here.

Provenance

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