Skip to main content

An interpreter for the Shakespeare Programming Language.

Project description

An interpreter for the Shakespeare Programming Language, implemented in Python.

How do I get this?

pip install shakespearelang

How do I use this?

Running a file is shakespeare run file-name.

Entering a REPL/console is shakespeare repl or just shakespeare.

What is the Shakespeare Programming Language?

The Shakespeare Programming Language (SPL) is a programming language with source code that looks like Shakespeare’s plays. The language is Turing complete, so theoretically just as powerful as any other language. It’s a lot of fun to write but not practical for any large projects. More info can be found on Wikipedia.

Note: Shakespeare’s actual plays are not valid SPL. SPL does not aim to provide backwards compatibility with legacy code written ~400 years ago.

What is this project?

This is an interpreter I wrote for SPL. It’s written in Python. The aim is to help programmers better understand how their SPL code is executing, with features like REPL and debugging. All previous implementations of SPL were cross-compilers, which makes an already confusing language even harder to follow.

What state is this project in?

I haven’t written any tests yet, but it will probably run any valid SPL program. Try running shakespeare repl or shakespeare to play with a fun REPL. Debugging is coming SoonTM.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for shakespearelang, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size shakespearelang-0.1.0-py3.5.egg (31.4 kB) File type Egg Python version 3.5 Upload date Hashes View hashes
Filename, size (15.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page