Skip to main content

Python port of the jbark dog-themed story programming language

Project description

pbark

Python port of jbark, the dog-themed story programming language.

Semi-automated port: pbark was translated from the Java source. It aims for parity with jbark and shares the same test suite. If behaviour diverges, jbark is canonical.

Release status

Already in this repo: interpreter, 95 tests, CLI, registry files in pbark/resources/, pip install . works from a clone.

Still to do (you): PyPI account → twine upload so others can pip install pbark. Full steps: docs/RELEASE-PYTHON.md.

When you edit breeds/objects in src/main/resources/, refresh the Python copy:

./scripts/sync-pbark-resources.sh   # from repo root

Install

Requires Python 3.10+.

cd pbark
python3 -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -e .

Run

From the repo root (after install):

./pbark/bin/pbark examples/woof/goodboy.woof
./pbark/bin/pbark --version
./pbark/bin/pbark --list-breeds

Or with the module directly:

python3 -m pbark examples/woof/bimba.woof

Flags match jbark: --help, --version, --strict, --quiet, --list-breeds, --list-objects.

Tests

pip install -e ".[dev]"
pytest tests/ -q

The test suite is ported from jbark's JUnit tests. Golden output, parser shape, and feature coverage.

Docs

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

pbark-1.0.0.tar.gz (56.2 kB view details)

Uploaded Source

Built Distribution

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

pbark-1.0.0-py3-none-any.whl (71.2 kB view details)

Uploaded Python 3

File details

Details for the file pbark-1.0.0.tar.gz.

File metadata

  • Download URL: pbark-1.0.0.tar.gz
  • Upload date:
  • Size: 56.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for pbark-1.0.0.tar.gz
Algorithm Hash digest
SHA256 84701eccf5deb22f0d235854998ef4e3b80bc680d8a164e060ef160eaad96819
MD5 4029da3bbcd65348fd9b9d7e2d84adf8
BLAKE2b-256 e46c23ab7f714bb61a4057e26fdc043bd8cefc7d22bdb2acc85d75b10f4e641a

See more details on using hashes here.

File details

Details for the file pbark-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pbark-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 71.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for pbark-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ed576314ff0b83b6863da850b74d404b9847fdc66f5ea74606045c261971565
MD5 0893fe5af8de974ccb2d3a2ef1b7d077
BLAKE2b-256 811d6f7e7a0d01fec3f08d4de52197e0485e1a0633747598b07ab83083dd4319

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