Virgil's Commonplace Book

Introduction

Virgil’s Commonplace Book is a computer-generated travel novel set in the Roman Empire. It was originally created as a part of National Novel Generation Month (NaNoGenMo). There’s also a related Twitter bot, @erat_viator.

Like all of my NaNoGenMo projects, the source code is on GitHub. The novel itself can be downloaded as well.

NaNoGenMo

National Novel Generation Month started in 2013 with a tweet by Darius Kazemi: “Hey, who wants to join me in NaNoGenMo: spend the month writing code that generates a 50k word novel, share the novel & the code at the end”. Riffing off of the idea of National Novel Writing Month, instead of writing a novel in a month, programmer-artists have made hundreds of novel generators since the event started.

Writing a novel generator is a somewhat niche practice, but prior to 2013 most text generation projects didn’t attempt anything close to the length of these books. The state of the art has advanced considerably over the course of the event’s existence. Adopting the NaNoWriMo definition of 50,000 words, NaNoGenMo is intentionally expansive in what constitutes a novel, and many of the generated novels are more interesting as conceptual art than as page-turners. But some of the novels can be enjoyable reads even apart from their generative context. However, in my estimation, the most successful generated novels require a strong motivating idea that is visibly realized on the page.

The Novel

The copy of this book that you see here is just one possible version of it: the novel generator is capable of creating a vast number of variations of it, some of which explore very different parts of the Roman Empire. Every version also has some commonalities: the same character, the same theme, the same Roman literature to draw from. This coincides with my philosophy of procedural generation: rather than abandoning the result to random chaos, I believe that anchoring the generator with a clear concept provides an inroad for the reader. The reader can use a starting point like this to gradually build out an understanding of the generator. Particularly a balanced generator with enough order to leave legible patterns and enough chaos to surprise us.

The pattern of this novel is simple enough, at the largest scale: Virgil begins in Rome, looks at the cities to which he can travel, and chooses one. He prefers to visit cities that he has not been to before. When he reaches a city, he finds something that has been written about it, or about the land nearby, and includes it in his commonplace book.

I had little control over which passages were chosen or which cities were visited. By happy coincidence, the first chapter corresponded to the path that the generator’s counterpart twitterbot is travelling on its similar errand, and thereafter I left the random seeds alone and let the chips fall where they may.

I haven’t read all of the book yet, myself: this is intentional. One of my inspirations was a bot that posts random museum artifacts and the bot that follows it that invents opinions about the art. I’ve learned little bits of history from it that I’d otherwise never have encountered. This novel is, therefore, closer to browsing a library than to searching the internet. There are things in here that I never would have read, and parts of the Roman Empire I never would have learned the geography of if I hadn’t worked on this project.

The Publication

Despite participating in National Novel Generation Month quite a few times, and this is the first time I feel that I’ve satisfactorily achieved the Apollonian-Dionysian balance that I think good procedural generation needs. Not that I lack ideas for improving it: there are more sources of historical data to draw from, and on the last day of November I had an idea that would allow a plot arc to be incorporated. You can plot Virgil’s path on a map, if you like: I’d have liked to have included one in the book, but it wasn’t in the cards for this edition.

While the generator can create endless variations of the novel, each particular copy is fixed. When you read the book, your experience of it is fixed in time. Even if the pages change before or after, the book you read in the moment is singular and unchanging. Future versions of this book may, in fact, be quite different. This, therefore, is the November 30th, 2015 edition, with a couple of formatting tweaks for printing, but no changes to the text itself.

A Commonplace Book

It has long been a common practice to incorporate the works of earlier writers into new books. Indeed, many commonplace books consist of nothing but quotations and similar notes. We have many surviving examples from the Roman Empire, such as Aulus Gellius’ Attic Nights. These texts were not always attributed to the original source. Lacking the modern concept of plagiarism (and our post-printing-press system of uniform citations) writers sometimes come off as careless to modern sensibilities. Quotes could be paraphrased and rather vague citations were the norm. Indeed, some authors committed a kind of reverse plagiarism, pseudepigraphically attributing their work to an earlier, more famous author.

In a way, this reuse is fortunate: many texts from the Classical period only exist in fragments quoted in other documents. Some works survive in epitome, distilled versions that summarized the text; for others we have fragments that later writers quoted or abridged as they wrote their compilations.

Photo of the cover of Virgil's Commonplace Book

Artistic Movements

Artists, of course, have been far looser with their borrowings than writers of mere facts, placing the present work solidly within a long tradition. The closest literary antecedents of NaNoGenMo–Dada and Oulipo–have often explored similar sampling approaches. Kathryn Hume has suggested that technical constraints have led NaNoGenMo to “align itself with poetics of recontextualization and reassembly.”

NaNoGenMo has included other approaches, such as the concrete poetry in thricedotted’s The Seeker, or the way structurally-plotted works like Hannah and The Twelve-Disk Tower of Hanoi evoke the chessboard constraints of Life a User’s Manual or Through the Looking Glass. But there is an undeniable strand of appropriation as we teach our machines to imitate their human creators. Still, that’s no reason to neglect giving credit, so this book attempts to cite the sources for the texts it borrows.

Serendipity in Procedural Generation

In this work, that deliberate borrowing is the intent. Unlike an age of precious codices, the information age is a time of entirely too much to read. Search engines can find anything you ask for but, like a fairy-tale mirror, can only answer the questions you know enough to ask in the first place. The serendipity of browsing through a library is lost. Extracting the stories and arranging them in a new pattern presents a new angle. Rather than an exhaustive view of the forest, it picks out one or two trees you might have otherwise overlooked.

Of the many motivations for using procedural content generation, serendipity has gotten less attention than efficiency or scale but perhaps has a longer aesthetic history: the Dadaists use of cut-ups, the discovery of unexpected juxtapositions in Raymond Llull’s volvelles, and various practices of divination, especially for our purposes, bibliomancy. As Jessen Lee Kelly points out, the Renaissance saw aleatory divination via both specially-designed lottery books and through randomly selecting a line from an existing text, such as the protagonists Rabelais’s The Life of Gargantua and of Pantagruel turning to Homer and Virgil to predict the future.

The present work has elements of both the way that lottery books were organized by subject and the use of classical texts. It draws on the Perseus Digital Library’s public API to index passages by their metainformation, so as the novel wanders around the Mediterranean landscape it chooses text that relates to the local history and mythology. But simultaneously, it is drawing from classical texts, the operation of the machinery acting as a kind of Virgilian lots.

The Protagonist

I chose Virgil as the protagonist for three reasons: first, his works are among the source texts in the Perseus Digital Library used for much of the text here. His Aeneid builds on earlier traditions, recast in a founding epic for a new age: appropriate for a work themed around appropriation and reuse in this new information age. This would not be enough to recommend him on its own: there are other authors whose works were much closer to the kind of copying and summarizing going on here. And The Golden Ass by Apuleius, one of the earliest surviving novels, is closer in form to the travel tale that structures this generated novel.

But there was also a tradition that linked Virgil and his poetry with magic and prophecy. It was no accident that Dante chose Virgil to be his guide through the Inferno. His memory is haunted by that touch of magic, a magic intimately linked with words and poetry. And, as Jeff Howard has pointed out in Game Magic: A Designer’s Guide to Magic Systems in Theory and Practice, programming is a form of magic. A magician-protagonist is entirely appropriate. Lastly, that tradition of magic led the much-neglected Avram Davidson to pen a novel with Vergil Magus as the magician-protagonist. My own pseudo-Virgil is a humble tribute to Davidson’s protagonist, a magician-turned-machine-homunculus librarian of forgotten texts.

Citations

Gramazio, Holly, and Sophie Sampson. “The History of Text Generation.” Matheson Marcault, 15 Dec. 2015, mathesonmarcault.com/index.php/2015/12/15/randomly-generated-title-goes-here/.

Howard, Jeff. “Game Magic: A Designer’s Guide to Magic Systems in Theory and Practice.” 2014. A K Peters/CRC Press. https://doi.org/10.1201/b16848

Hume, Kathryn. “NaNoGenMo: Dada 2.0.” 2015. Retrieved December 14, 2020, from https://arcade.stanford.edu/blogs/nanogenmo-dada-20.

Karr, Suzanne. “Constructions both Sacred and Profane: Serpents, Angels, and Pointing Fingers in Renaissance Books with Moving Parts.” The Yale University Library Gazette 78, no. 3/4 (2004): 101-27. Accessed December 14, 2020. http://www.jstor.org/stable/40859568.

Kelly, J. L. (2011). Renaissance Futures: Chance, Prediction, and Play in Northern European Visual Culture, c. 1480-1550. UC Berkeley. ProQuest ID: Kelly_berkeley_0028E_11817. Merritt ID: ark:/13030/m5df9vr6. Retrieved from https://escholarship.org/uc/item/6r20h5s3

Phone

(432) 301-9393

Address

Santa Cruz, CA 95060
USA