Thursday, November 6, 2014

Seraphinianus

I have wanted to own a copy of the Codex Seraphinianus for over thirty years, ever since I saw a copy at my best friend Erik's house that belonged to his father. It is a book of fantastic illustrations and seemingly indecipherable text, an Encyclopedia of an impossible, surreal dream world. The creator is one Luigi Serafini, an Italian architect who did the drawings and wrote the text over a period of three years in the late '70s. The drawings—ink and colored pencils, mostly—show animals that look like plants, plants that look like man-made artifacts, and artifacts that look like people. In one series of illustrations, people having sex on a couch transform into an alligator.

On another page, pairs of fish with iris-like decorations appear as the malevolent gaze of a living ocean.

The text is a combination of strange capital letters, some of which look like illustrations of knot work, and some kind of flowing script that looks like mirrored cursive mixed with Arabic writing. Diagrams appear that seem to illustrate taxonomies, or possibly some kind of imaginary math, or linguistic diagrams of his made up language. I doubt it really means anything, but it does a remarkable job of looking like it means something.

It has also been notoriously hard to find, having been out of print in the US for twenty years. Good copies of the original sell on ebay for hundreds of dollars, maybe even thousands. In 1996, when I went to work for the now-defunct Borders Books, it was the first book I looked for, and finding it out of print was my first great disappointment at that job.

There's a second edition out, however, which I discovered a little over a month ago when I was idly musing about the book and entered the title into Google. My heart soared when I saw that among the first hits was a link from a certain well-known online retailer, and I put it in my shopping cart until I could afford to spend $85 US—on sale, nonetheless—for a book.

I do not regret that decision.

cheers,
Adam

Tuesday, November 4, 2014

Stumbling Blocks, One-character Wide

Lisp, the programming language, is one of the oldest still in use. It has many variants, or "dialects", as the programming language people like to call them: Common Lisp, Elisp (specifically for the Emacs text editor), Scheme, and Clojure are popular ones. Because of macros, because of the (relatively) straightforward syntax—throw parentheses around everything—and because of sheet hype, the people who love Lisp love it almost fanatically.

I'm trying to be one of those people. I threw in with Common Lisp because of Peter Siebel's excellent book, Practical Common Lisp; I can't say it hasn't been without some bumps.

Case in point: what is 'a'? Encodings and character sets aside, what is it, really? The intuitive answer is, "it's a letter", or, more computery-sounding, "it's a character". With lisp, it isn't always so clear, however: it could be a character, yes, or it could be a string of length: 1. Lisp has both characters and strings, rare in my experience: either you have strings as a fundamental data type, or you have characters and fashion strings as an array or vector of characters. But having both: that's something I'll have to get used to. (EDIT: Nope, I'm wrong. And this entire post is an example of how far I have to go in understanding Common Lisp.)

Likewise, numbers can be confusing. Perl has a "DWIM" ("Do What I Mean") ethos behind it, and is usually pretty good at guessing what you mean, at the cost of some runtime cycles. One place where it's so good at doing what I mean, it tripped me up in my initial attempts to learn Lisp. If the perl interpreter sees something that looks like a number, it treats it like a number, espcecially if you're trying to do numeric things with it like sorting or arithmetic.

Lisp, or at least Common Lisp, doesn't do that. It sees a "7" somewhere, and it might be a number. Or it might be a character.

I can tell this is something that's going to bite me again before I gain proficiency.

cheers,
Adam