Skip to main content

pbark 🐶

A dog-themed story programming language for Python.

pbark is the Python port of jbark, the original Java implementation.

pbark aims for feature parity with jbark and shares the same test suite. If behaviour differs, jbark is considered the canonical implementation.

Installation

Install pbark from PyPI:

pip install pbark

Quick start

Create a file called goodgirl.woof:

I have a labrador.
She has 2 toys.
Her name is "Bimba".
she barks how many toys she has

Run it:

pbark goodgirl.woof

Commands

Show version:

pbark --version

Show help:

pbark --help

List available breeds:

pbark --list-breeds

List available objects:

pbark --list-objects

Available flags:

  • --help
  • --version
  • --strict
  • --quiet
  • --list-breeds
  • --list-objects

Python module usage

pbark can also be executed as a Python module:

python -m pbark examples/woof/goodgirl.woof

Development

Clone the repository:

git clone https://github.com/AlexH89/bark
cd pbark

Create a virtual environment:

python3 -m venv .venv

Activate it:

Linux/macOS:

source .venv/bin/activate

Windows:

.venv\Scripts\activate

Install development dependencies:

pip install -e ".[dev]"

Run tests:

pytest tests/ -q

The test suite is ported from jbark's JUnit tests and verifies parser behaviour, runtime behaviour, and compatibility.

Documentation

See https://github.com/AlexH89/bark.

Examples

Runnable .woof programs are available in the GitHub repository as well.

Related project

pbark is the Python port of jbark, the original Java implementation.

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.3.tar.gz (56.3 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.3-py3-none-any.whl (71.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pbark-1.0.3.tar.gz
  • Upload date:
  • Size: 56.3 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.3.tar.gz
Algorithm Hash digest
SHA256 d98949ba8cf368f2de49513d0c6f646d6bd11d29cd5004e2b93a21992804e429
MD5 123297ca3cb9d2c32dc79c8130e355dd
BLAKE2b-256 2cd04bc75064e2d951cdc4bc32a8b2aca222d3358660b43ff9450b4518b5e3f7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pbark-1.0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5b5f4ef689f4731d2d22c91651e5dcd7a46c261060bc4492125ab263ee8f5148
MD5 b45411aad691b2682703be14468b1d56
BLAKE2b-256 ca12a76a6db598cece224e22b8c4735ec4dbad15a2d4fb038df0ab9d7d8b3dbb

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 Sentry Error logging StatusPage Status page