Computer language as spoken language
John Gruber (one of the great bloggers, in my opinion) writes about the issues with Applescript, concluding it’s an abyssmal failure
But saying what you mean, in English, almost never “just works” and compiles successfully as AppleScript, and so to be productive you still have to understand all of the ways that AppleScript actually works. But this is difficult, because the language syntax is optimized for English-likeness, rather than being optimized for making it clear just what the fuck is actually going on.
While I think he’s a bit harsh, and that Applescript has been used in a lot of cases to do things that are impossible on most machines, I do think that it’s attempt to model English, rather than abstract spoken language, and that makes people expect more flexibility than is really natural in a computer-parsable language. English has massive amounts of context that is both implicit and explicit—all of which are nearly impossible to duplicate in a computer language.
I think languages like Smalltalk, with a simple, regular syntax, are better suited to this sort of thing. There’s even F-Script on the Mac, which exposes all of the Applescripty goodness for automation.
The goal, rather than trying to make the user’s language “natural,” something that is still decades away—thanks Marvin—is to make it regular, predictable and comprehendable. In addition, it must be discoverable. All of these things are attributes of Smalltalk, and to some lesser extent (in the discovery domain) Lisp.
Power, and learning, come from simplicity, not complexity.
This entry was posted at 3:09 pm on 28 September 2005 and is filed under Lisp, Mac, Smalltalk, Technology. You can follow any responses to this entry through the post-specific RSS 2.0 feed.
Both comments and pings are currently closed.
Goddamn you Minsky! I’ll get you I swear, one day I’ll get you!