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.0.7.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.0.7-py3-none-any.whl (40.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: bxengine-1.0.0.7.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.0.7.tar.gz
Algorithm Hash digest
SHA256 a4b62b4a0f77d9a171cf4d44ec2997d95833aa666ec396d339df3bc6a8adeea4
MD5 a02e5ef842208af183276af02b0a4cec
BLAKE2b-256 46daf2f414542224c1e3912e67a7b2ff91bb09a588ad122caefd5212e6bb50b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for bxengine-1.0.0.7.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.0.7-py3-none-any.whl.

File metadata

  • Download URL: bxengine-1.0.0.7-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.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 e53d97643b7c33ea0c6e74c370cf3b6c87489cf4e01dfed86bd8d9be28aa2ca3
MD5 622e6b3155b7d7affbd0522db0334555
BLAKE2b-256 6265c1f0860cdb3be08e56c6cb07c43fffcb6ad12da3762a345dfcde6e150343

See more details on using hashes here.

Provenance

The following attestation bundles were made for bxengine-1.0.0.7-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