Open Wound
matt_butler

use Open Wound
view source
visit sourceforge.net project page
tag set

return to portfolio

Open Wound is a language mixing tool developed in the same spirt as a DJ's set of turntables, albeit with a much different interface. By running two copies side-by-side, an artist is able to tag one text's grammatical parts-of-speech and graft it onto another text. Additionally, a word frequency filter is available to leave common words untouched, preserving structure and coherence. The resulting text mash-up can be used for a variety of purposes; Conceptual blockbusting, experimental writing, buzzwords, or fun. Open Wound is a perl CGI script named after the famous cut-up writing techniques invented by the surrealists, William S. Burroughs and others.

The following is a famous writing "algorithm" written by Tristan Tzara followed by the Open Wound algorithm.

Tristan Tzara

To make a dadaist poem
Take a newspaper.
Take a pair of scissors.
Choose an article as long as you are planning to make your poem.
Cut out the article.
Then cut out each of the words that make up this article and put them in a bag.
Shake it gently.
The take out the scraps one after the other in the order in which they left the bag. Copy conscientiously.
The poem will be like you.
And here you are a writer, infinitely original and endowed with a sensibility that is charming though beyond the understanding of the vulgar.

Open Wound

I. When a TAG button is pressed

1. Accept any amount of text from a field called INPUT. Perform a part-of-speech tagging and display the tagged words in a text field called TAGGED OUTPUT. The value of the TAGGED OUTPUT field might look/NN something/NN like/IN this/DET ./PP

2. Copy each word (without its POS tag) into an appropriate field based on it's part-of-speech. The user may delete words or add their own words. Make all words lowercase.

II. When a GENERATE button is pressed

1. Accept a value the user has inputed in the COMMON field. The value can be from 0-100. The number corresponds to an array that contains the 1000 most common words in the English language. (For example, a value of 20 in the COMMON text field means the 20 most common words will not be substituted in the next step.)

2. Substitute each of the words or punctuation marks in the TAGGED OUTPUT field with a different word or punctuation mark from the corresponding POS field unless that word is in the range specified by the COMMON value in which case it is not substituted. Display the result in a SUBSTITUTION text field.

3. Capitalize any letter directly following the PP, Punctuation, Sentence Ender tag then remove the POS tags from the SUBSTITUTION text. Display the new text in a field called RECOMBINED.