Skip to main content

An interpreter for the tone-deaf programming language.

Project description

tone-deaf

GitHub stars PyPI

tone-deaf is an esoteric programming language which manipulates a stack based on chords. This repository contains a reference interpreter for the language as well as the wiki describing each function.

tone-deaf can be installed through pip:

pip install tone-deaf

Running from a file

Programs can be run from a file in one of two modes: normal or ‘lyric’ mode. Lyric mode allows you to leave comments on every other line, like so:

E E E
The above takes 3 integers.
A7 A7
This will calculate (a ** (b ** c)).

which the intepreter reads as:

E E E A7 A7

Normal mode assumes there are no comments. To load a file in normal mode, use the -f option, i.e. tone-deaf -f program.deaf. To load a file in lyric mode, use the -l switch along with the -f option, i.e. tone-deaf -l -f program.deaf.

Using the REPL

If no file is provided via the switches above, you will be provided with a REPL. This will work the same was as the paring for normal files would, except the stack is persistent throughout the entire execution. Example:

td> E E E
1
2
3
[1 2 3]
td> Em7
[1 2 3 3]
td> E7#9
[3 3 2 1]
td> A7 A7 A7
[19683]
td> quit
...

The stack will be printed out after each line entered.

Functionality

Please check out the wiki to get an understanding of all capabilities.

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

tone-deaf-0.3.0.tar.gz (5.5 kB view hashes)

Uploaded Source

Built Distribution

tone_deaf-0.3.0-py3-none-any.whl (11.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page