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

Uploaded CPython 3.13+Windows x86-64

panproto_grammars_functional-0.55.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.55.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.55.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.55.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.55.0-cp313-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for panproto_grammars_functional-0.55.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 977d90138d3fe272fcaadaec32c08d3241ce2f040a71ce35ee7fad2bedf74f8d
MD5 4b3ba2a5aa58804d040786afff1160bd
BLAKE2b-256 a4b6808378cac77f64574b5f29ad8be6fb08f68d041f14d9cc5b133791167c14

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.55.0-cp313-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 95cb6fe71706c37642efd2053986ec3872f37a1b0b577c4d579783c5bf30a868
MD5 2beba420eb8805fc7bbd7192b6f0e04c
BLAKE2b-256 323723eabfaa7dfe534b1a732265b90b6d37176da059c4986e24ef00641aca67

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.55.0-cp313-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9b3344d611efa66dc2c6e084971551ff922f06c9a4f5024ac4e0b03493408c6e
MD5 13151b99c08dbbf0616eb57e8049e226
BLAKE2b-256 e5ef096e141b2e4a82ecd8302066e4288410eb42a36cb2298b9fbcf4974fb953

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.55.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b56d1641d4f4199c656069c46ca269cee3fc52b5f7609dd5cd10f246e4979cd9
MD5 dad5974455dc50a5ac69db0eff7cd813
BLAKE2b-256 873ccaab995e3d2b29c840f7032c41b9635cad72aa67da68c3719de54e8049f7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for panproto_grammars_functional-0.55.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f3e928ba0c1864c6732f6da1f726db7f4d2e709a368d1343acbca68ec1f912f3
MD5 e87b53ed5842ac9959e009c9b5839340
BLAKE2b-256 ccbee929adfe105fbe82c057fe66e2c136bc92b3341266bf9e7fe1b2a0640cce

See more details on using hashes here.

Provenance

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