I’ve been enjoying reading J.R. Carpenter’s An Ocean of Static, which uses a particular syntax borrowed from the list notation found in popular programming languages, to provide inline, alternate readings to choose from. In some ways it recalls the Choose Your Own Adventure series and the venerable hyperlink itself that allow multiple readings to emerge from a text. This is no accident since Carpenter is an accomplished hypermedia artist. But this list notation works a bit differently, in a way that is less action oriented, and operates at a more structural level. To give you a sense of how it looks here is an excerpt from a longer sample that Carpenter has made available on her website:
As you read the text to yourself silently you see the possibilities that have been made available, and are invited to choose one. As you choose you can’t help but consider the contingencies that lead you to one word over the others. The set of choices also work to form a type of musical chord, where the multiple possibilities exist in potential. However, when reading aloud, as Carpenter does here, you are compelled to choose for the words to flow.
Computer programs can automatically unlock the various possibilities and dynamically collapse them into a choice as the page is assembled–like the text in this example found on Carpenter’s website. If you watch you’ll see that the text changes over time and if you reload the page. In many ways these poems are a metaphor for the web itself, where web browsers receive representations of resources at a given period of time, not some fixed static thing, or as Roy Fielding notes in his dissertation about the architecture of the web:
… a resource R is a temporally varying membership function MR(t), which for time t maps to a set of entities, or values, which are equivalent. The values in the set may be resource representations and/or resource identifiers. A resource can map to the empty set, which allows references to be made to a concept before any realization of that concept exists – a notion that was foreign to most hypertext systems prior to the Web. Some resources are static in the sense that, when examined at any time after their creation, they always correspond to the same value set. Others have a high degree of variance in their value over time. The only thing that is required to be static for a resource is the semantics of the mapping, since the semantics is what distinguishes one resource from another.
Fielding (2000), p. 88
An owl and a girl most <ul class="multiverse"> <li>adventurous</li> <li>curious</li> <li>studious</li> </ul> <ul class="multiverse"> <li>set out</li> <li>set sail</li> <li>sailed away</li> </ul> in a <ul class="multiverse"> <li>bottle-green</li> <li>beetle-green</li> <li>pea-green</li> </ul> <ul class="multiverse"> <li>boat</li> <li>sieve</li> <li>skiff</li> <li>vessel</li> </ul> <script src="https://edsu.github.com/multiverse/multiverse.js"></script>
sure, there are gazillions of ways to write a generative text— J.R. Carpenter ((jr_carpenter?)) May 11, 2018
It seems fitting that it should be so, right? One interesting thing about using HTML to declare the possibilities is that you can embed images or links, CSS styled text or audio/video in the list. The multiverse is multimedia.
On finishing this exercise and writing it up as this blog post I realized that another way to do this would be as a Markdown processor that could take a list much like Carpenter has in her book and render that. But that is an experiment for another day.