Giter VIP home page Giter VIP logo

tone-deaf's Introduction

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.

tone-deaf's People

Contributors

kade-robertson avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.