Skip to main content

Python implementation of the PLAN instruction set.

Project description

marduk

A standalone Python runtime for the PLAN virtual machine.

Status: pre-alpha. The package is a placeholder — the spec-faithful core, BPLAN op coverage, and jet overlay land in subsequent commits. Until then, callers that need a Python PLAN runtime use packages/plan-kernel/'s vendored harness.

Goals

  • Spec-faithful core. A direct translation of vendor/reaver/doc/plan-spec.txtE/R/H/J/B/S/C/I/X as Python functions over a Thunk-cell value type with update-in-place force. Strictness comes from the spec's ; sequencing, not from Python's evaluation order.
  • Complete BPLAN op coverage. All of Reaver's op 66 named primitives, including the IO family that today's harness stubs.
  • Jet overlay. An optional id-keyed performance layer; correctness lives in the spec-faithful interpreter regardless of jet presence.
  • Differential against Reaver. A small Plan Asm corpus run on both Marduk and Reaver in CI.
  • No coupling to gallowglass. Marduk imports nothing from gallowglass; gallowglass eventually depends on Marduk as a library.

Non-goals

  • Native-speed PLAN execution. Marduk is correctness-first; production workloads belong on Reaver.
  • Hosting Reaver-itself-as-BPLAN. A future possibility once IO ops and performance reach the bar; not in scope for the initial release.

Layout

packages/marduk/
├── marduk/         # Python package
│   └── __init__.py
├── tests/
└── pyproject.toml

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 Distribution

marduk_plan-0.2.1.tar.gz (47.4 kB view details)

Uploaded Source

Built Distribution

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

marduk_plan-0.2.1-py3-none-any.whl (35.2 kB view details)

Uploaded Python 3

File details

Details for the file marduk_plan-0.2.1.tar.gz.

File metadata

  • Download URL: marduk_plan-0.2.1.tar.gz
  • Upload date:
  • Size: 47.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for marduk_plan-0.2.1.tar.gz
Algorithm Hash digest
SHA256 db2df4b2eb009a65697b026ec87bdf7bdc7ee7eeca5f0982d9a8ae242ed853d3
MD5 a6cafb1549150c57aa5a3ae289005261
BLAKE2b-256 2abfa266c351b22fbb93051ed7949e4211f76833bb1872aaedbd2077b51cfb14

See more details on using hashes here.

File details

Details for the file marduk_plan-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: marduk_plan-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 35.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for marduk_plan-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5c3780c53cc1bc86d5ede4b6cc505a75bd40bd5ced6e7c999f1225e2b16e5e94
MD5 06bdd09f5d0be09d38e9a9c5d27a6714
BLAKE2b-256 75fa31c7139915e8f361ccd02f851752106de32033f9ec578b642e74f477c23d

See more details on using hashes here.

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