Skip to content


Poetry makes nothing happen.

“In Memory of W. B. Yeats”, W. H. Auden, 1940

Introducing Coem, a poetic programming language.

Tokens / Metaphors

Play with re-interpreting and blurring words and symbols, in consideration of their uses in both programming and literary contexts.

to sl?eepwhen:

Regular expressions / Ambiguities

Express multiplicity and place ideas into juxtaposition. Use regular expressions (a sequence of characters specifying a search pattern) in identifiers and values.

let me be true
let se(e|a) be blue
let mis(t|sed) be thick
let mou?rning be dark

Identifiers as strings / Code as text

Let the compiler trust your own private interpretations of variable names. Identifiers that aren’t explicitly defined are interpreted simply as strings.

let me be alive
knowme † alive

Directives / Customisability

Teach the compiler how to interpret and interact with you. Directives allow you to use different features and play with different ideas.

#using palimpsest
#using daisychain
#be gentle

One-panel editor / Source code as primary text

Write intimately and collaboratively with the compiler in one text area.

 based on Emmy Meli's “I Am Woman”

#as palimpsest

let I|me|myself be woman
let me be fearless
let me be sexy
let me be divine

knowmyself † woman fearless sexy divine

Syntax highlighting / Code as display object

Treat your code as a display object to be viewed and appreciated. See your words become typographically transformed through parsing.

to breathing:
     in and out, and thus to
    & nothing.