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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.47.1-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.1-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.1-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.1-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.1-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.1-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 39a125a345f7a27248c7fc0ab20f3d0a2abb5d5d31980d621f5c186748ac18d0
MD5 b43fd7e990e81577081be8ab67a6aa31
BLAKE2b-256 30d88f50f50e2aff41f10f6bc422db5635e66d0183c55e42c440bdaf8372bcd4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.1-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 aac02fc965a01d24eae08870ade41cb5fda72dd7e8cc5ce2ef42706369698888
MD5 c4a2d0b1930875c00b8b2300d81a39f3
BLAKE2b-256 94546eb597c250bbfef87226c8e03980323f4e11cfe10e848bf60d704494245f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.1-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a6d9659498c3a02041b55437194dbfa11e26c1db4ea2eb3914d921240edd0c5d
MD5 2bfdbc3871596d173f271d756f571960
BLAKE2b-256 216efc7ce36aaabb848e9f9553e43f38a9234e8e424182292cd03e160babb133

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.1-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f73189bd422817779b1b5e9093c7fdb2f4e7f41019fcddf17b6e261ef5d1765a
MD5 9601ffc056d811cc2815b7af680424d8
BLAKE2b-256 02361f2352355a388e3807853642ea662c168bc4d8973d240a026aa9b020b980

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.47.1-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5e7c12b88593378699b4b9f31be7d40001728d617bab48a679413921a25a9bc5
MD5 39e65a1b641cb75b4aaab875b6393288
BLAKE2b-256 a42ecb834c46667aa0a84a82e5fed2757440a67085be95cf6af100e2c9e9611b

See more details on using hashes here.

Provenance

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