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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.51.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.51.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.51.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.51.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.51.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.51.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 17c9ddbc87927f3b02b4c9c0a5f225ab37c1b4452fe71b32830e81a8139b8664
MD5 10b44902dc60ea18a4835b43ffe83be6
BLAKE2b-256 772961609acafdda0942b17ac5a3deadc71a8a6653803b71a1901d49e9c9385d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.51.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 425b7d4768bfd720d5d3eae9a252496c989686303847a1a64842ca8f106961c8
MD5 d6783a0cd7681731d1b6a394348dbdb4
BLAKE2b-256 24fdd144191b31d1e27bd28a18306c07da3e07be1ead7ec090f2b06de77f7baf

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.51.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 814933cf2d825302de610f061b08bf2410a86c92c01993b08de35e2cd24b05d1
MD5 7a30feb853ec2babb051a7eb2e307268
BLAKE2b-256 ceebdf0638cd4747852a7c261d89f388dbf4fe694f827f9515f6e3ceceee02e5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.51.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ed18a0e0f46350d23e140439c94394d1afe181ffa48af5bb29821273dc43cb3
MD5 c73761e8c6ec31411b485461465aa273
BLAKE2b-256 573bd6c8f69196fcd8dc13167c9bc22a4097d15c51fcc6607fa23c86e6caf145

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.51.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 642ade956d9cbc58485f4d3a5c4a991a6757641951ec1521a830821fe92d4187
MD5 fcf5290c1b12a8c7c1a0f7241d5c0af0
BLAKE2b-256 bf09e664e1465aa55e8463f66020cd081b9b8ade30e24835466f95bdd74d7257

See more details on using hashes here.

Provenance

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