A Whitespace interpreter.
Project description
An interpreter written in Python for the imperative, stack-based language called Whitespace.
Installation
To install, simply use pip (or pipenv):
$ pip install whitespace
Usage
Let program.ws
be any Whitespace program. To execute it, type:
$ whitespace program.ws
You can find example Whitespace programs at tests/fixtures.
For example, here’s the factorial program:
$ whitespace fact.ws
Enter a number: 40
40! = 815915283247897734345611269596115894272000000000
Development
Recommended tools:
Clone the repository and install the dependencies:
$ git clone git@github.com:dwayne/whitespace-python.git
$ cd whitespace-python
$ pipenv shell
$ pipenv install --dev
You’re now all set to begin development.
Testing
Tests are written using the built-in unit testing framework, unittest.
Run all tests.
$ python -m unittest
Run a specific test module.
$ python -m unittest tests.test_parser
Run a specific test case.
$ python -m unittest tests.test_parser.ParserTestCase.test_it_parses_push
References
Credits
Thanks to Edwin Brady and Chris Morris for designing/developing this programming language; they are also developers of the Idris programming language.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file whitespace-1.0.0b8.tar.gz
.
File metadata
- Download URL: whitespace-1.0.0b8.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 747026deeb65ae3badd2d63460a0e959f811dda9588a5863f7db44a0e6e23df0 |
|
MD5 | fec4ef3a4e40ec2196178ddd3e04b966 |
|
BLAKE2b-256 | 0edb4addd92b7f4b24673447073c5bd7c5fb288eed27f3e66d03609f5a498f56 |
File details
Details for the file whitespace-1.0.0b8-py3-none-any.whl
.
File metadata
- Download URL: whitespace-1.0.0b8-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28120de2acef077afd855e5b8d36b022ebbf5755247454a3f8fc48901631e767 |
|
MD5 | 5e75d0d1422f0514b291447868c74e04 |
|
BLAKE2b-256 | 6ef1ff7bcbb627aede26cc5cd8d83a835310e297b1826279544c0ceeaa707af6 |