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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.52.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.52.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.52.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.52.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.52.1-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.1-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cbb6c5b819f1b60cc97cf6c27d6e09c6fba592589bb9cf387d19852fdf776a52
MD5 f4e61ff895bba7c432dfca25e21bbb76
BLAKE2b-256 1d737f21bdb9f24ae140fa1f24f38cf9e28b5eb9053b186bd61e55da1f9c66b1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.1-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 102c4cd3c881f3c58074b6eb81fd15a8596c784bb1fa710265bc074b0975986b
MD5 f83ad1ca7db5b192dc76139e3b176137
BLAKE2b-256 a9e33fd11406e2a1bca04d162cf189583a502aef37e8c45a2b79ca7dc2ba25c9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.1-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9be1a254d73b0b001a5451293b12cca46b1bbeb476fc19d35c4271f088f23222
MD5 cb84b00bdd07835223817c5f6335c8e3
BLAKE2b-256 0e371a6e5c93a162aaa6eaa972e29641c241c0d9d81f5d9f46dfeda084b770fb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.1-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 88ffe8e94bfd4647b452c0d1ac64ba2e7868fff423c4573da6a407c512f343e1
MD5 d2564251cfb2f2b5861a103ec0dce2e9
BLAKE2b-256 7e047a67cfa5be90a5610d75fcfdd77f579581d05debbd6832aaf64513d3888b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.52.1-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 edaf8e0565d967654bd4b9fa5542066d6e84f688357d9f794f87390b1943eb64
MD5 4c46cded5565ded725b2e104fbc6592c
BLAKE2b-256 2730d012ebc1a8976f25e029840cc8788226b49ca683483ecc872b897b0d57b0

See more details on using hashes here.

Provenance

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