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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.48.6-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.48.6-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.48.6-cp313-abi3-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.13+macOS 11.0+ ARM64

panproto_grammars_functional-0.48.6-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.48.6-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.6-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c0bd1d08146a2da8643a23f446be9aca74c4130a854bc12aa0478a36c2b0375c
MD5 4e27d0a124c844593162acd3ec636c16
BLAKE2b-256 27126789c87c91a485dbbf86ba30d778a1165bf6dfebea9a9dbbd9ccd241d997

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.6-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 29b83b10626a41c736e4a58f47be24abddacfe7fa116a4ff8705e56b2570a3e1
MD5 1b7ed584aded5349a33b7548b69971da
BLAKE2b-256 f831a0c56e71062dacaf141d7dd040a4e6c29589450fae7dcdcc554b25ad561d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.6-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 12228811af7d66eb112448c3b02e9ac555499da0e6d089fb0891c0944eefbc13
MD5 98e2b195c7f0502f0e363494df6f97da
BLAKE2b-256 a2ae213d53acb9fc9dd429bbb4249bd695e22fdff49998d83d723eca53696444

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.6-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 84243051e273c16882b8e2177ec84ea9f10a1c95647594a28f0daf11db7e4655
MD5 f79104b0955fcc204390c703a817aa7b
BLAKE2b-256 c251cda64233385a33ccc76f6e3cd4b141f7e57ec5b025b32bb5f94a9e4b1966

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.48.6-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 67c0ee6fb50edff2d1d27b3db8e75e4f1d430830448ba936f847afaa639f9f65
MD5 5b8901ccd5584359095fa6838d47b0a4
BLAKE2b-256 c8a6270eed9d22b898d7759a9189cfa0195cf7137fcccf3458d2e5afaa8d6f83

See more details on using hashes here.

Provenance

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