Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Programming Language

Shakespeare Programming Language

Esoteric Language

The Shakespeare Programming Language (SPL) is an esoteric programming language designed by Jon Åslund and Karl Wiberg in 2001 so that valid programs read as scripts in the style of an Elizabethan stage play, with variables represented as named characters, arithmetic expressed through elaborate insults and compliments exchanged between characters, and control flow expressed through characters entering and exiting scenes. SPL is Turing-complete despite its comedic form, its explicit design goal being to demonstrate that a genuinely usable programming language could also be a piece of readable, if absurd, dramatic prose.

Facts
First Released
2001 1
Significance
The Shakespeare Programming Language's significance is that it demonstrates a full programming language whose valid programs are written to read as an Elizabethan style stage play, using named characters as variables. 2
Connections

In Field

Source Shakespeare Programming Language, Wikipedia
Sources
1. shakespearelang.com: The Shakespeare Programming Language
shakespearelang.comIntroduction
Quote, Introduction
which was designed by Karl Wiberg and Jon Åslund in 2001.
View the Source
2. Shakespeare Programming Language, Wikipedia
  • Lead section
    The Shakespeare Programming Language (SPL) is an esoteric programming language designed by Jon Åslund and Karl Wiberg.
  • In Field: Programming Language Theory, Lead sentence
    Shakespeare Programming Language (SPL) is an esoteric programming language designed by Jon Åslund and Karl Wiberg.
  • In Group: Parody and Themed Esoteric Languages, Lead
    The Shakespeare Programming Language (SPL) is an esoteric programming language designed by Jon Åslund and Karl Wiberg. Like the Chef language, it is designed to make programs appear to be something other than programs, in this case, Shakespearean plays.
View the Source
Wikidata: Shakespeare Programming Language
Wikidata Q1140574, class allow-list match (w-wdresolver-0926)View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.