Friday, August 20, 2004

I have been reading a lot of Lisp-related books and articles lately. It has been interesting to see how various writings either capitalize or don't the word "Lisp." For instance, in MIT AI Memo #12, John McCarthy, who should know a bit about this, uses "LISP." On the other hand, the Symbolics 3600 Technical Summary uses "Lisp." Nobody would accuse those guys at Symbolics of not knowing Lisp. Guy Steele, who knows a lot about a lot, uses "Lisp" in Common Lisp: The Language. Paul Graham uses "Lisp" in both ANSI Common Lisp and Hackers and Painters.

Well... I'd have to respect McCarthy for kicking the whole thing off, but "LISP" is losing steam, it seems.

Update: I just checked AIM-349, "Scheme: An Interpreter for Extended Lambda Calculus," by Sussman and Steele. Seems they use LISP. Somewhere along the line, Steele switched religions.

I don't see how Steele switched sides: AIM-349 doesn't seem to be talking about Common Lisp, whereas CLtL surely does. Also, I'm not sure, but MIT AI Memo #12 doesn't seem to be talking about Common Lisp either. The original language created by McCarthy wasn't Common Lisp.I have no doubt that McCarthy called it LISP, but that was his language, not Common Lisp, and Common Lisp isn't LISP. I don't see any reason to capitalize "LISP" in Common Lisp, the standards seem to agree with me.

I don't see why the "Lisp" in Common Lisp should be capitalized. AIM-349 doesn't seem to be talking about Common Lisp, but McCarthy's LISP. I have no doubt that McCarthy called his language LISP -- fully capitalized --, but LISP isn't Common Lisp and Common Lisp isn't LISP. I see no reason to capitalize the "Lisp" in Common Lisp, and no reason to downcase the "LISP" that McCarthy created. This is also why I use CL as a shortcut for Common Lisp, and say "Lisp" when I mean the language family consisting of languages (historically or otherwise) related to or typically associated with LISP, including Common Lisp, Scheme, and more. I find using "Lisp" instead of Common Lisp quite confusing in most circumstances, since many people also use "Lisp" when they mean some other member of Lisp the language family.

I'd guess it's because the name originated as LISt Processing, sort of a pseudo-acronym, but after a while it turned into a proper name. The Sabre reservation system has the same story, it used to be something like "Semi-Automated Business Research Environment", but turned into a proper name somewhere along the way.