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.

Release files for pbark 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pbark 1.0.3
File Size Uploaded
pbark-1.0.3.tar.gz 56.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pbark 1.0.3
File Interpreter ABI Platform
pbark-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 127.5 kB

Release files / pbark-1.0.3.tar.gz

Download URL pbark-1.0.3.tar.gz
Size 56.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d98949ba8cf368f2de49513d0c6f646d6bd11d29cd5004e2b93a21992804e429
BLAKE2b-256 checksum
How to use checksums
2cd04bc75064e2d951cdc4bc32a8b2aca222d3358660b43ff9450b4518b5e3f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / pbark-1.0.3-py3-none-any.whl

Download URL pbark-1.0.3-py3-none-any.whl
Size 71.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5b5f4ef689f4731d2d22c91651e5dcd7a46c261060bc4492125ab263ee8f5148
BLAKE2b-256 checksum
How to use checksums
ca12a76a6db598cece224e22b8c4735ec4dbad15a2d4fb038df0ab9d7d8b3dbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page