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

Uploaded CPython 3.13+Windows x86-64

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.2-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 5e331d7f1e873624fcf7ff21c6a1b6d795f1ea1309fef27174c5e825c425da68
MD5 91d36ccce860af408c02157019c3893b
BLAKE2b-256 51eb47d0e743b8ca306df5aa9a94594a4f83bed22419e98febe5a6da1369ed4f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.2-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b65e80793e3dc21f4a2837daf2e536c51c49b69ba853eb309b96a8651fd2180f
MD5 3b8ed9ff108f26c5c91b86c08ce0f099
BLAKE2b-256 6b841cb2a8f4ed7f4459b691e29a915df99edeb30bc0d59472d02e9e7d5b2e7d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.2-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d2956da1b38392dc161519784f3771b624d2d8db33fa71a9cfc8b50f3fa5d849
MD5 b2bc3be48033eeffaeb1b5822d0b2225
BLAKE2b-256 1e09561ec1b01e69e71077b24d918006ed80755f6db4c738611c29b70760c3dd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.2-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b51603a8a267ea9b083667371f49f02fe830b82d87934d4ffc652b692e4f5218
MD5 29559a7259c92a66826ac52950efc3d9
BLAKE2b-256 c033886df4c5a4e5340bf9c5fcc1b5839ab21ed18427dfeeb262cdd15394fa2f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.2-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4d0ced6834fa6022d976eb814f055a4979f24804165857fa79bf48a9084b2044
MD5 15582cf08858f66f9b9d10ed6c02b5b0
BLAKE2b-256 f7de8113fdebb9018134b3541b0d1270d9879ed9dc6740beb61d55f05adc9e34

See more details on using hashes here.

Provenance

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