Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

2026 Participants: Martin Bartelmus * David M. Berry * Alan Blackwell * Gregory Bringman * David Cao * Claire Carroll * Sean Cho Ayres * Hunmin Choi * Jongchan Choi * Lyr Colin * Dan Cox * Christina Cuneo * Orla Delaney * Adrian Demleitner * Pierre Depaz * Mehulkumar Desai * Ranjodh Singh Dhaliwal * Koundinya Dhulipalla * Kevin Driscoll * Iain Emsley * Michael Falk * Leonardo Flores * Jordan Freitas * Aide Violeta Fuentes Barron * Erika Fülöp * Tiffany Fung * Sarah Groff Hennigh-Palermo * Gregor Große-Bölting * Dennis Jerz * Joey Jones * Titaÿna Kauffmann * Haley Kinsler * Todd Millstein * Charu Maithani * Judy Malloy * Eon Meridian * Luis Navarro * Collier Nogues * Stefano Penge * Marta Perez-Campos * Arpita Rathod * Abby Rinaldi * Ari Schlesinger * Carly Schnitzler * Arthur Schwarz * Haerin Shin * Jongbeen Song * Harlin/Hayley Steele * Daniel Temkin * Zach Whalen * Zijian Xia * Waliya Yohanna * Zachary Mann
CCSWG 2026 is coordinated by Lyr Colin-Pacheco (USC), Jeremy Douglass (UCSB), and Mark C. Marino (USC). Sponsored by the Humanities and Critical Code Studies Lab (USC), the Transcriptions Lab (UCSB), and the Digital Arts and Humanities Commons (UCSB).

Fictional Code - Jurassic Park (1990)

Title: Jurassic Park
Author: Michael Crichton
Language: (Fictional)
Year of development: 1990

Code Snippet:

curv = GetHandl {ssm.dt} tempRgn {itm.dd2}.
curh = GetHandl {ssd.itli} tempRgn2 {itm.dd4}.
on DrawMeter(!gN) set shp-val.obi to lim(Val{d})-Xval.
if ValidMeter(mH) (**mH).MeterVis return.
if Meterband](vGT) ((DrawBack(tY)) return.
limitDat.4 = maxbits (%33) to {limit 04} set on.
limitDat.5 = setzero, setfive, 0 {limit .2-var(szb)}.
on whte-rbt.obi call link.sst {security, perimeter} set to off.
Vertrange={maxrange+setlim} tempVgn(fdn-&bb+$404).
Horrange={maxRange-setlim/2} tempHgn(fdn-&dd+$105). void
DrawMeter send-screen.obi print.

Context:

In a novel, computer code is rarely shown. Where code features in a plot, it is most often alluded to without printing the code itself, such as in hacker sequences of the sort found in Neal Stephenson or William Gibson novels. The reader of a novel is not usually expected to be conversant in the language of code. There have been a few works of literature inspired by computer code, such Georges Perec's The Art of Asking Your Boss for a Raise, where the whole short novel is styled as the output of following an algorithm represented by this flowchart:

Where code does appear in a novel, we might expect it to be maximally readable, like the BASIC code in Gabrielle Zevin's Tomorrow, and Tomorrow, and Tomorrow (2022):

10 READY
20 FOR X = 1 TO 100
30 PRINT “I’M SORRY, SAM ACHILLES MASUR”
40 NEXT X
50 PRINT “PLEASE PLEASE PLEASE FORGIVE ME. LOVE, YOUR FRIEND SADIE MIRANDA GREEN”
60 NEXT X
70 PRINT “DO YOU FORGIVE ME?”
80 NEXT X
90 PRINT “Y OR N”
100 NEXT X
110 LET A = GET CHAR()
120 IF A = “Y” OR A = “N” THEN GOTO 130
130 IF A = “N” THEN 20
140 IF A = “Y” THEN 150
150 END PROGRAM

Here this code is syntactically flawed to show the beginner status of the programmer, and the function of the code is explained in the next passage for the readers who cannot follow along.

The novel Jurassic Park was written by a former programmer, Michael Crichton. He made the dinosaur park's computer system a central feature of his novel, even including images of its GUI. He took a different approach to referring to code to other authors: the code was shown and it was deliberately incomprehensible. In the snippet quoted above, only one line of the code is meant to be sensible to the reader and is explained in the dialogue immediately before it is displayed:

“It’s marked as an object,” Wu said. In computer terminology, an “object” was a block of code that could be moved around and used, the way you might move a chair in a room. An object might be a set of commands to draw a picture, or to refresh the screen, or to perform a certain calculation.
“Let’s see where it is in the code,” Arnold said. “Maybe we can figure out what it does.” He went to the program utilities and typed:
FIND WHTE_RBT.OBJ
The computer flashed back:
OBJECT NOT FOUND IN LIBRARIES
“It doesn’t exist,” Arnold said.
“Then search the code listing,” Wu said.
Arnold typed:
FIND/LISTINGS: WHTE_RBT.OBJ
The screen scrolled rapidly, the lines of code blurring as they swept past. It continued this way for almost a minute, and then abruptly stopped.
“There it is,” Wu said. “It’s not an object, it’s a command.”
The screen showed an arrow pointing to a single line of code:

What follows is designed to be an opaque wall of computer code. If you know what to look for, you might understand some parts as functions (DrawMeter), and you might guess some of it may be to do with measuring something (there is a vertical and horizontal range), perhaps for showing on the screen ("send-screen.obi print"). The function of printing the sequence of code in the novel is to show that there is irrelevant code that hides a "trap door":

“Son of a bitch,” Arnold said.
Wu shook his head. “It isn’t a bug in the code at all.”
“No,” Arnold said. “It’s a trap door. The fat bastard put in what looked like an object call, but it’s actually a command that links the security and perimeter systems and then turns them off. Gives him complete access to every place in the park.”

Just as Arnold skim reads the code, dismissing the surrounding lines as irrelevant in his search, so to does the reader. The incomprehensibility of the code is itself part of the literary technique of deploying it. This deliberate opacity can be seen clearly in the French translation of the novel. In the 1992 edition, translated by Patrick Berthon, (pg. 260), the commands and error messages are translated into French, like so:

RECHERCHE WHTE-RBT.OBJ
Le message suivant s'afficha:
OBJET NON TROUVÉ DANS BIBLIOTHÈQUES

Whereas the code (including the "white rabbit" object itself) appears identically, with no localisation. When code appears two chapter later, it has the same superficial appearance (though without the full stops). There its appearance is to show the code with and without a few lines of self-deleting code. These lines are written to be intelligible:

on fini.obj call link.sst [security, perimeter] set to on
on fini.obj set link.sst [security, perimeter] restore
on fini.obj delete line rf white-rbt.obj, fini.obj

The code restores the security perimeter and then deletes itself and all mention of the white rabbit trap door. We can imagine a language such that this code could believably execute, whereas that is harder to do with the deliberately nonsensical code that surrounds it. Here, the surrounding lack of sense heightens the readability of the section of code the reader is led to understand.

Questions:
- Are there other examples of fictional code that take a different approach or is deployed for a different effect?
- Does a segment of code add or remove from the immersive quality of a novel? Does it matter if the code really could or couldn't compile?
- Are there some underexplored literary uses that code could be put to?

Comments

  • This is really fun! Although not quite code, Peter Watts’s Blindsight includes a very cool technical explanation of the (anti)role of consciousness, and of why vampires are afraid of crosses. To explain these (and how they are related!) would ruin this wonderful book for you, so I won’t, but also I don’t feel like spending an hour writing it up, so I got Gemini to do it for me. Be forewarned: SPOILER ALTERT: https://g.co/gemini/share/5fbcaa42fa2c

Sign In or Register to comment.