TITLE: Programming Language As Artistic Medium
AUTHOR: Eugene Wallingford
DATE: January 16, 2015 2:59 PM
DESC:
-----
BODY:
Says
Ramsey Nasser:
I have always been fascinated by esolangs. They are the such an
amazing intersection of technical and formal rigor on one hand
and nerdy inside humor on the other. The fact that they are not
just ideas, but *actual working languages* is incredible. Its
something that could only exist in a field as malleable and
accessible as code. NASA engineers cannot build a space station
as a joke.
Because we can create programming languages as a joke, or for any
other reason, a programming language can be both message and medium.
Esolang is enthusiast shorthand for
esoteric programming language.
I'm not an enthusiast on par with many, but I've written a few
Ook!
interpreters and played around with others.
Piet
is the most visually appealing of the esoteric languages I've
encountered. The image to the right is a "Hello, World" program
written in Piet, courtesy of
the Wikimedia Commons.
Recently I have been reading more about the work of
Nasser,
a computer scientist and artist formerly at the Eyebeam Art +
Technology Center. In 2010, he created
the Zajal programming language
as his MFA thesis project at the Parsons School of Design.
Zajal was inspired by
Processing
and runs on top of Ruby. A couple of years ago, he received
widespread coverage for
Qalb,
a language with Arabic script characters and a Scheme-like syntax.
Zajal enables programmers to write programs with beautiful output;
Qalb enables programmers to write programs that are themselves
quite beautiful.
I wouldn't call Zajal or Qalb esoteric programming languages. They
are, in an important way, quite serious, exploring the boundary
between "creative vision" and software. As he says at the close of
the interview quoted above, we now live in a world in which "code
runs constantly in our pockets":
Code is a driving element of culture and politics, which means
that code that is difficult to reason about or inaccessible makes
for a culture and politics that are difficult to reason about and
inaccessible. The conversation about programming languages has
never been more human than it is now, and I believe this kind of
work will only become more so as software spreads.
As someone who teaches computer science students to think more
deeply about programming languages, I would love to see more and
different kinds of people entering the conversation.
-----