Skip to main content

B++ runtime engine

Project description

bxengine

bxengine is a Python implementation of the B++ runtime engine.

Install

pip install bxengine

CLI

Run a file:

bxengine path/to/program.bx

Run inline code:

bxengine -e "[CONCAT \"hello\" \" world\"]"

Development

uv sync --dev
pytest

Language Server

Start the LSP server over stdio:

uv run bxengine-lsp

The server publishes syntax diagnostics from the existing tokenizer/parser pipeline.

Compatibility warnings are also reported for accepted-but-suspicious syntax:

  • extra ] at top-level (ignored by compat behavior)
  • unclosed [ (auto-closed at EOF)
  • unterminated quoted strings (accepted as-is)

Included language features:

  • completion of built-in B++ functions
  • macro-aware completion (@...) with current-document macro names prioritized
  • hover for built-in function signatures/details and macro-call symbol hints

Neovim (lspconfig) example:

require("lspconfig").bxengine = {
  default_config = {
    cmd = { "uv", "run", "bxengine-lsp" },
    filetypes = { "bpp", "bx" },
    root_dir = require("lspconfig.util").root_pattern("pyproject.toml", ".git"),
  },
}
require("lspconfig").bxengine.setup({})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bxengine-1.0.1.tar.gz (34.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bxengine-1.0.1-py3-none-any.whl (40.4 kB view details)

Uploaded Python 3

File details

Details for the file bxengine-1.0.1.tar.gz.

File metadata

  • Download URL: bxengine-1.0.1.tar.gz
  • Upload date:
  • Size: 34.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bxengine-1.0.1.tar.gz
Algorithm Hash digest
SHA256 4221fbc60c9609e3d403803739b38c9d8e6b2ccbe5d3906085afa8905d95873b
MD5 d48ce158ca8fab41584c39bde6b57676
BLAKE2b-256 d3b0b933903b11a41f1eb1afdf0c6c61b8492ab208f67f44271f79d26998aefd

See more details on using hashes here.

Provenance

The following attestation bundles were made for bxengine-1.0.1.tar.gz:

Publisher: publish.yml on infernostars/bxengine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bxengine-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: bxengine-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 40.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bxengine-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4e1b0b707d8972304f72d03edc32449adb1b8c77d0d05d04aa16115df96d5758
MD5 5c4ca0e5cf8a5da8301a170d2a648d0b
BLAKE2b-256 77b458886adcaabb0c31a9da678a50890f463420070ce4b564a72c18c68029b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for bxengine-1.0.1-py3-none-any.whl:

Publisher: publish.yml on infernostars/bxengine

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