Daniel Temkin
bzzz@danieltemkin.com

New Languages

These experiments in language and code focus on the conflict between programming languages, designed with the assumption that human beings are capable of expressing logic, and the actual human beings who write code in them.


New Languages zine

2016

A zine of programming languages, presented as open-ended experiments, some functional, some unimplemented ideas, others impossible to perform.

FatFinger.JS

2017

A JavaScript library expanding JS to allow typos and misspellings as valid code. Published in Leonardo and presented at SIGGRAPH, 2018


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. Allows for infinitely long programs that take up 0 bytes on disk (* yes there's a caveat).


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.


2016

A language that lays claim to absolutely everything that is not a C program. Empty files are ↄ programs, as are all python programs, jpegs, political screeds, crumpled up paper, wind, oranges, any piece of text (or other information) that is not a C program. The most interesting ↄ programs are failed C programs, meaning programs that attempt to be C but have syntax errors. ↄ programs of any real complexity are failed C programs, these programs that come close to being programs in C but with or fails to be C. Their likeness invokes more complex behaviors from the ↄ language, because failing to be C later in the program introduces different behaviors from a ↄ program.


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.

New Alphabets

Font and Unicode based experiments

Stoke Font

2015

A font built from the 52 strokes making up the 26 upper-case and 26 lower-case letters in the English language. Each word displayed in the space of a single letter.

An Alphabet of the Most Attractive Letters

2015

A font created with the 52 most beautiful characters, based on 150k+ votes.