Week 8
From Expressive Computing
Contents |
Reading discussion
Some points on Oulipo:
- Literature as constraints and procedures
- "The really inspired person is never inspired, but always inspired." What does this mean? How was the Oulipo positioning itself with regard to Romantic ideals of literature?
- Literature is subject to "exploration" by procedural means
- If language is a concrete object, how do we manipulate it?
- Forms as potential
Some poetic forms
"A poem is a small (or large) machine made of words." -- William Carlos Williams
A poetic form is halfway between a set of constraints and a set of instructions. Some of these constraints/instructions are formal (e.g., rhymes, number of syllables) and some are semantic (e.g., what the poem has to be "about").
- Sonnet (abab cdcd efef gg rhyme pattern; each line in iambic pentameter) Examples
- Haiku (in the common English adaptation of the Japanese tradition: poems of three lines, 5-7-5 syllables; semantically constrained) Examples
- Sestina (sets of six-line stanzas with interweaving rhyme patterns) Examples, Ashbery, Pound
- Limerick (Five line poem with aabba rhyme structure, strict metrical constraints) Baffling profusion of examples
- Lipogram (writing without one letter, or a set of letters) Example
- Pangram (piece of writing containing every letter) Wikipedia thoroughly catalogs the possibilities
- Acrostic (first letter of each line spells out a word)
- Mesostic (any letter in each line spells out a word) Mesostomatic
- Caligram
... and so forth.
Compare and contrast form with techniques such as N+7, cut-ups.
Our question: How do computers see text? What are the easiest ways to manipulate it programmatically?
Relevant work
Poetics
- Jackson Mac Low's Diastic reading (example: Asymmetry205)
- Loss Pequeno Glazier, Grep Works
- Interview Palin
- Alan Sondheim, Julu
- Nick Montfort, ppg256
- Google Poetry Robot
- Travesty
- Daniel Howe and Aya Karpinska, No Time Machine
- Beard of Bees (esp. Gnoetry)
- Flarf
- Leonard Richardson, Eater of Meaning (see also Spurious Sonnets)
- David Melnick, PCOET
- Adam Parrish, Entropic Text Editor
Analysis and Visualization
- Sai Sriskandarajah, The Waste Land
- Chris Harrison, Web Tri-grams
- Stefanie Posavec, On the Map
- Kyle McDonald, Fontback
- Nina Katchadourian, Talking Popcorn
- Similar Diversity
Code examples
Resources
- Natural Language Toolkit (NTLK): Python tools for parsing text into language. Includes tokenizers, grammar parsers, taggers, corpora, etc.
- WordNet, a "large lexical database of English," provides a computational model of concept/word/meaning relationships in English. NLTK has a Python wrapper, but here's another that might be easier to start with.
- Daniel Howe's RiTa library for Processing provides a number of NTLK-like features.
- Python Regular Expressions HOWTO, a sober introduction. I happen to like the Perl Regular Expressions tutorial (the regexes are the same, but you'll have to translate the code samples from Perl to Python). Daniel Shiffman's Regular Expressions examples are in Java and can easily be adapted for use in Processing.
Preparing text files
Cut-and-paste from wherever, and save to disk as ASCII text. Word wrap if you have to. (more details in class)
Reading for next week
- Vannevar Bush, As We May Think, pp. 37-47 in NMR.