Small Poetry Machines
“A poem is a small ... machine made out of words.”
—William Carlos Williams
Why No GitHub, WordNet, or APIs?
Our class sessions will focus on what can be done by creating short, stand-alone programs. It turns out that there is a great deal we can do in this vein, and it allows us to concentrate on code and the workings of programs. We will look into at least one lightweight lexical resource, but the focus will be on using the built-in computational capabilities of programming languages with small, hand-crafted elements of data. We will be sketching and exploring, so will use iPython Notebook and simple text files instead of worrying, at this point, about version control.
Although they are self-contained as programs, the small poetry machines we will study, modify, and create will allow us access to the history of creative text generation and to the global creative practices that involve computation, language, and literary art.
Short, Self-Contained Text Generators for Study, Modification, & Use
- “Random Mazes,” a sort of concrete poem in a single line of code. 1981. Commodore PET/VIC 20/Commodore 64 BASIC.
- ppg256, nm, 2007-2012, series of seven 256-character generators. This code is considerably less clear than with other programs on this page, but if you like a challenge... Perl.
- “Ruby Yacht,” nm, 2013. Ruby.
- Action Score Generator, Nathan Walker, 2015.
- Cigarette Boy: A Mock Machine Mock-Epic, Darick Chamberlin, 1991.
- Generation[s], J. R. Carpenter, 2010.
- How It Is In Common Tongues, John Cayley and Daniel C. Howe, 2012.
- Irritant, Darby Larson, 2013.
- The Policeman’s Beard is Half Constructed, Racter, 1984.
- Sentences, Charles O. Hartman and Hugh Kenner, 1995.
Generating Compound Words in Python
- “Upstart” modification.
- Follow-along programming in iPython Notebook to explore English and develop new compound words.
- Presentation on exploratory programming and distribution of draft book on the topic.
- Rapid review and reporting on books of or related to computer-generated language.
- Historical & global glances at Memory Slam & Renderings.
- Selection of a small-scale program for modification.
- Share “The Two.” Discussion of antecedents, translations. If apropos, presentation & discussion of other work by nm.
- Platform studies presentation with Q&A.
- Python compounding review, discussion, completion of yesterday’s follow-along exercise.
- Collaborative Python project. Work in pairs, read the results aloud to share your work, then hear one or more responses or comments from others. See some ways to do it in three.py and (for printing every combination) three_exhaustive.py.