Daniel Temkin
bzzzz@danieltemkin.com

The first artist's monograph of programming languages, out September 23, 2025. More at MIT Press.

"Every new spread in the book makes a reader feel like they're discovering new territory with a worthy explorer who's there for the joy of it."
- Douglas Coupland

Some projects from the book

An expanding list of implementations and documentation of realized languages.

Valence

Valence

2024

A polysemantic language for code with multitudes of meaning.

Valence is a programming language written in eight Ancient Greek measuring and numeric signs. Each is a homophone with multiple meanings. Context determines the meaning of the symbol; if multiple readings remain, every interpretation plays out in parallel.

FatFinger.JS

2017

FatFinger embraces the true meaning of JavaScript by allowing typos and misspellings to read as valid code.


Folders

2015

A language where code is written as empty folders. the program is encoded into a directory structure. All files within are ignored, as are the names of the folders. Commands and expressions are encoded by the pattern of folders within folders.

Entropy

Entropy

2010

A language where data decays the more it's used; the programmer has a short time to get their point across to the user before the program fades into entropy.


A programming language is a formal language comprising a set of strings that produce various kinds of machine code output.

2014

A programming language is a formal language comprising a set of strings that produce various kinds of machine code output.


Past Tense

For code never to be run again.

2021


Captive

2024

A language where every text is a valid program.

Inspired by the Oulipian constraint set Prisoner's Constraint, in Captive every tall lower-case letter is a command. All other letters are ignored.


Light Pattern

2012

A language where code is written with photographs. The LP coder creates algorithmic photography: a series of photos that, in addition to their visual content, function as a program when run in Light Pattern. Programs written by the creator of LP explore this relationship.


Olympus

2022

A programming language whose virtual machine is Olympus. Instead of registers, we have a set of gods, each of which will do specific things for us if we ask them in the right way.


Rivulet

2024


Velato

2009

A language where one writes code using music; the program is a MIDI file read by the compiler in terms of pitch intervals (the first language to function this way). The coder creates a song that also functions as a program. Designed with the songwriter in mind, allowing flexibility in how the music is constructed.


Time Out

2015

A language where any meaningful action takes place between the lines of code. Every command is a time-out, an instruction to sleep. This is the only thing accepted as a valid command. The other functionality of the language occurs based on how much time has passed. This means that waiting the correct amount of time might fire a print command, or adding a value to the stack. As a web-based language, one has to keep the program running in the active tab and not click away, or risk the wrong amount of time passing, causing the program to fail. Only rapt attention by the programmer (or an inactive computer) will let the program run as intended.