Challenge: 10 PRINT Screensavers

All right, anyone who is listening.

Someone has written requesting a 10 PRINT screensaver.

I can’t find one lying around the Web – is anyone up for creating one for Windows, Mac, and/or GNU/Linux (xscreensaver)?

It’s be great to make the code available so that people could modify it as they could modify the original 10 PRINT program.

The person seeking this screensaver has suggested, cleverly, that upon exiting the screensaver, the message “BREAK IN 10 / READY.” be shown.

10 PRINT Marches on

The news service of my school at MIT, the School of Humanities, Arts, and Social Sciences, has an article about 10 PRINT CHR$(205.5+RND(1)); : GOTO 10.

Also, there has been some furious and pretty amazing program creation and compaction going on in DOS/x86 land. It all seems to have started when demoscener Trixter (a.k.a. Jim Leonard) decided to port 10 PRINT to x86 assembly. His first, straightforward version was 42 bytes long, but he was quickly able to chop it down by replacing the random number generator with a single instruction: 25 bytes. Getting ready of some of the nice and tidy but strictly unnecessary startup and shutdown code brought the program down to 15 bytes. Then, thanks to the clever use of an opcode that I’d never heard of before which is meant for string comparison and is called SCAS, he was able to trim the code to 13 bytes — the shortest he thought it could ever be.

Of course, someone (Peter Ferrie) found a way to get rid of another byte, so the program sat at 12 bytes long.

herm1t came along to provide an optimization that assumed DOS was loaded, reducing the program to 11 bytes.

And, most recently, Peter Ferrie returned to lop off another byte, showing that the program (on Intel CPUs, at least) need only be 10 bytes long.

Trixter provides the full story (so far!) on his blog, Oldskooler Ramblings.

My joke about this is that the shortest possible 10-PRINT-like program will be a single jmp instruction to a run of 8 or 9 bytes that happen to already be in memory. However, this is probably only a joke: the number of possible 8-byte combinations of bits are 256^8 = 18446744073709551616, so it really isn’t very likely, even for an extremely short program of this sort, that it will just happen to be lying around somewhere in memory initially.

Speaking of the demoscene, I mentioned in my last post that viznut has checked out the book. He’s also written a very nice VIC-20 version of the program that uses two of the tiles from the Black Path Game instead of the original diagonal lines:

0 FORI=7168TO7183:READA:POKEI,A:NEXT:POKE36869,255
1 PRINTCHR$(64.5+RND(.));:GOTO1
2 DATA16,16,32,192,3,4,8,8,8,8,4,3,192,32,16,16

The result:

VIC-20 Black Path Game version of 10 PRINT

Finally, we had a great time exhibiting the 10 PRINT program and the 10 PRINT book at the 2013 MLA’s electronic literature exhibit and presenting the program and modifications of it at the MLA offsite electronic literature reading. Thanks to Dene Grigar and Kathi Inman Berens for curating the exhibit and the reading. And, thanks to Patsy Baudoin, Mark C. Marino, and Mark Sample for joining me for that presentation and for offering commentary (play-by-play and color) as I coded on the Commodore 64.

Code, Poetry Intersect in a Corner

In this episode of Poetry Corner with Guido, Guido the python shares a Gertrude Stein poem titled Sacred Emily.

Poetry Corner with Guido

Jared Nielsen, thanks to his schooling in Modern and Contemporary American Poetry, his ability as a programmer, and his recent creation of a puppet, has developed an amazing conflation of Gertrude Stein, the Python programming language, and the Wonder Showzen episode “Patience.”

Nielsen has been recreating famous American poems in Python or so that they are about Python, as in “The Red Wheelbarrow” and “Song of Myself.”

His project parallels that of Páll Thayer along two dimensions: Thayer, in his series Microcodes, presents short programs in Perl (not Python) that often recreate famous artworks (not poems), for instance Vito Acconci’s Seedbed and Jasper Johns’s Flag.

We must admit, however, that Thayer does not employ a puppet named after Larry Wall.

10 PRINT “HAPPY NEW YEAR”

Happy new year!

A few updates related to our book 10 PRINT CHR$(205.5+RND(1)); : GOTO 10

Booksellers had some problems keeping the book in stock in recent weeks. The MIT Press is addressing this by printing more copies.

We learned in November, and were recently reminded by Finnish scener and programmer of one-liners viznut, that there is a pre-Commodore 64 version of the program. It’s in a fairly obvious place, too: The VIC-20 User’s Manual, on page 102. The program is identical to the first variant in our book (Variant 1982) except that the line numbers are 10, 20, and 30 instead of 10, 20, and 40. This wasn’t a big surprise to us, as we knew since early in the process of writing the book that the program worked not only on the Commodore 64 but also on the VIC-20 and the PET. It would have been nice to have documented this variant in the book, of course.

mjcohenw on Hacker News states that the program originated even earlier:

I discovered this on my Commodore PET probably about 1980 and presented it at a users’ group meeting (in the Los Angeles area). I have no way to prove this right now, but I swear that this is true.

So, there’s a testament to the program being written and shared on the PET even earlier. That it comes from human memory, and not from some print source, should be no surprise to readers of 10 PRINT.

Finally, I’ll note that 10 PRINT appears as one of the “creation stations” at the 2013 Modern Langauge Association Convention. The exhibit it’s in, Avenues of Access: An Exhibit & Online Archive of New ‘Born Digital’ Literature, will be in room 312 in the Hynes Veterans Memorial Convention Center. Exhibit times are:

Thursday, 3 January, 12 Noon to 7:00 p.m.
Friday, 4 January, 9:00 a.m. to 7:00 p.m.
Saturday, 5 January, 9:00 a.m. to 7:00 p.m.

The exhibit closes on Saturday afternoon and will not be open on Sunday.

There will be a reading to accompany the exhibit on Friday night, 8 p.m. to 10 p.m., at Emerson College’s Bordy Theatre, 216 Tremont Street. 10 PRINT will be part of that and will be presented by five of the book’s co-authors.

Review of 10 PRINT in Slate, New Ports/Variants

Geeta Dayal reviewed 10 PRINT in Slate. As far as I know, this is the first published review of the book, and I greatly appreciate how it traces the discussion of mazes and other topics, pointing out the many cultural and well as technical touchstones.

Over at Stack Overflow they have a nice thread going with several shell scripts that implement 10 PRINT.

Daniel Haehn has written a 3D version of the 10 PRINT program in WebGL.

And my lab’s server is back up after a power outage here in Cambridge, MA, so the PDF of the book that was hosted there is once more available.

10 PRINT at the Boston Cyberarts Gallery

As seen on Bruce Sterling’s blog, we have an 10 PRINT (or, to be precise, a 10 PRINT CHR$(205.5+RND(1)); : GOTO 10) event tomorrow, Wednesday, here in Boston. The Boston Cyberarts Gallery (formerly AXIOM) is located in the Green Street T station on the Orange Line; the event’s at 7:30pm.

An evening to celebrate the publication by MIT Press of 10 PRINT CHR$(205.5+RND(1)); : GOTO 10. This book takes a single line of code-the extremely concise BASIC program for the Commodore 64 inscribed in the title-and uses it as a lens through which to consider the phenomenon of creative computing and the way computer programs exist in culture. The ten authors of this collaboratively written book, treat code not as merely functional but as a text-in the case of 10 PRINT, a text that appeared in many different printed sources-that yields a story about its making, its purpose, its assumptions, and more.

They consider randomness and regularity in computing and art, the maze in culture, the popular BASIC programming language, and the highly influential Commodore 64 computer.

Nick Montfort will start off the evening leading a discussion among co-authors and the audience about this celebrated piece of software. And there will be a short hackathon.

ATNE Salons are informal discussions on art/technology topics. At each event, we start the discussion with a presentation by an expert in the field who’ll provide context and raise provocative questions. Next, with the help of a moderator, we turn the debate over to you. Share your ideas, discover new ones and participate in analytical discourse and artistic cross-pollination.

About Art Technology New England

ATNE is a member-run organization whose purpose is to foster existing and new collaborations in the New England art and technology communities, including non-profit, academic & corporate entities, as well as individuals.

When: Wednesday, November 28th, 7:30pm
Where: Boston Cyberarts Gallery,
141 Green St.,
Jamaica Plain, MA 02130

Free event!
RSVP to info [at] atne.org
www.atne.org

10 PRINT Exhibit, Reading

Our book 10 PRINT CHR$(205.5+RND(1)); : GOTO 10 has been printed and bound and is making its way to bookstores now. It’s featured in a current exhibit at Hampshire College, and three of us ten co-authors did a reading to celebrate the release at the Harvard Book Store yesterday, where the first copies were available.

Nick Montfort of 10 PRINT

Our reading at the Harvard Book Store drew a sizable crowd, including MIT colleagues from Comparative Media Studies / Writing and Humanistic Studies and the Literature section; comrades in the People’s Republic of Interactive Fiction, librarians, and local free software folks and hackers, among others. The three of us read some short excerpts from the book and discussed the project, first with each other and then in response to questions from the audience. Several people assumed that the book was a collection of individually-authored articles, which is not a surprise, since that’s usually how a book like this is done. So we spent some time explaining the process of collaborative authorship that we used. The photos here are of me (Nick Montfort) on the left, then of Patsy Baudoin and Noah Vawter.

Patsy Baudoin of 10 PRINT Noah Vawter of 10 PRINT

Meanwhile, back in Western Massachusetts … and specifically at Hampshire College, the exhibit “Pulp to Pixels: Artist’s Books in the Digital Age” is on until November 16. The exhibit is curated by Andrea Dezsö, Steven Daiber, and Meredith Brober, is part of the “Non-Visible and Intangible” series, and is located at the Harold F. Johnson Library. There’s a news item about the exhibit and site with curatorial descriptions and documentation.

Below are photos of John Slepian, who offered his Commodore 64 for the exhibit and set it up, and a gallery visitor enjoying a 10 PRINT variant.

Setting up the C64

A visitor using the C64

By the weekend, 10 PRINT should be available in fine online and brick-and-mortar bookstores, including my other main bookstore in Cambridge, the MIT Press Bookstore. We hope readers will enjoy the project, and that it will also be an invitation to think about collaborative research and scholarship in the humanities in a new way.

Language and Code at the Gate

What are we waiting for, assembled in the forum?

A technical report is to arrive today.

No need to worry about what will become of you without a technical report! The report, the fourth “Trope Report” in the Trope Tank series that started this year, is here:

In “Carrying across Language and Code,” Natalia and I discuss issues of translation and computational writing. With reference to electronic literature translation projects in which we have been involved as translators or as authors of the source work, we argue that the process of translation can expose how language and computation interrelate in electronic literature. Various small poetry generators, a cybertext poem, and two works of interactive fiction are discussed in this report.

Share and enjoy…

“Taroko Gorge”: The Vandalism Continues!

As I wrote a few days ago, I made a statement about “Taroko Gorge,” and all of its vandals, at the ELO conference in Morgantown, WV.

Sepand Ansari created a Beckett-based “Taroko Gorge” remix at the ELO conference. And now I have the URL for this piece, “Waiting for Taroko Gorge.”

Kathi Inman Berens has created “Tournedo Gorge” “to mash the space of computation with the female, domestic, and tactile,” as she discusses in her blog post.

“Taroko Gorge” at the WVU ELO Conference

_This was my statement for the “Taroko Gorge Remixed” panel yesterday (June 21) at the 2012 ELO conference. The panel was organized by Mark Sample and also featured Scott Rettberg, J. R. Carpenter (who joined us by video chat), Talan Memmott, Eric Snograss, Flourish Klink, and Andrew Plotkin. In attendance and part of the discussion were Leonardo Flores and Sonny Rae Tempest, who did work based on the Taroko Gorge code after the panel was proposed._

It is curious that I was invited to be part of this panel today, for I am the only speaker in this session who has not created and released a remix of Nick Montfort’s “Taroko Gorge.”

Today, however, to remedy this mismatch, to bridge this gap, to traverse this gorge, I am releasing a remix of my poetry generator, “Taroko Gorge.” This new work that I have completed and placed online today is also called “Taroko Gorge.” This remix was created to be an elegant poetry generator, producing a boundless nature poem and inspired by the experience of walking through Taroko Gorge National Park in Taiwan. The code of the program is the same as that of the original, and the text used as strings in the generator is also the same as that of the original. No comments have been added.

So, how can one distinguish this new “Taroko Gorge” from the original poetry generator of the same name? For one thing, I have placed today’s date on the right side of the page, to indicate that _this_ is the remix that was completed today. When citing this work, you must also include the date that you accessed this page to comply with MLA, Chicago Manual of Style, and other bibliographic standards. If you leave the “Taroko Gorge” page open long enough, staring at it with meditative bliss, rapt attention, or monomaniacal trembling, you should include a date range rather than a single date in your bibliographic entry.

But enough of the temporal dimension. In addition to including a date, the new version of “Taroko Gorge” includes the names of all known vandals, those who have replaced my own lyrical words and phrases with ones associated with various other individual visions, ranging from the idiosyncratic to the downright perverse. These appear on the right-hand side – stricken out. Since it is not proper to condemn people without evidence – unless we put them aboard a plane and take them to another country – I have also included links to the offending Web pages.

This remix of “Taroko Gorge” asserts something very simple: that the rebirth of the author comes at the expense of the death of other authors. Something simple, about originality, voice, and purity of essence, which has been said in so many ways: Remix = death. Take back the gorge. Don’t tread on me. There’s a bear in the woods. Make it old. I did it my way. Under the page, the code.