There are many misconceptions about the Macintosh before the arrival of Mac OS X. One of them is the absence of a shell, a command-line interface.

about CLImaxAlthough it is true that until 2001 Apple never provided one out of the box, there have been many ways to obtain such an interface, including Apple’s own MPW package for developers and a plethora of third parts applications and utilities. Among these was an AppleScript command interface for the System 7 called CLImax that was developed around 1996 by Drew Thaler.

Since we interviewed Drew a while ago about his work for Apple we also asked him to tell us the background story about this peculiar shell for the so-called “Classic” Mac OS.
Drew Thaler: I was in university at the time, and everyone in the engineering department spent a lot of time using the command-line interfaces on Unix systems. (SunOS, HP-UX, Apollo, etc.) The Mac had a few types of command-lines — MPW, MacPerl, and so on – but there was no reason to use most of them, because really the way you interacted with the Mac was through GUI apps and that’s where your data was kept.

But there was a text-based way to talk to the GUI applications on your Mac: AppleScript.

I wrote the AppleScript support for some of our internal applications at the university, and I also wrote AppleScripts to test them. As I did that I kept getting frustrated at how hard it was to write scripts. The syntax was English-like, but it wasn’t really English. It was easy to read and hard to write. You’d try a command and it wouldn’t quite do what you expected. Or it would fail because the application didn’t support the particular syntax you were trying. Or you’d try something that seemed natural only to find that the data you wanted wasn’t accessible via AppleScript at all. It was frustrating.

CLImax lets you enter short, one-line script commands and see the result immediately. You didn’t need to type something long like ‘tell application “Finder” to get windows’. Instead you’d just tab over to the Finder as your target and type “get windows”. Hit return and it would run immediately, and you’d get the result in the right-hand side.

CLImax window

You could also chain commands together — “count result” would count the number of windows that were returned by the previous command — and define variables and functions to use later. This made it incredibly easy to try different commands from the application’s dictionary until you found a method that worked. And because it was driven by a hotkey you could pop it up and use it at any time.

CLImax didn’t make AppleScript any simpler, but it made it friendlier and put it right at your fingertips. I never sold many copies, but I never really promoted it either. (At the time, shareware was distributed primarily via FTP servers like Info-Mac.)
Lately I’ve been hearing from a lot of very smart people that they used and liked CLImax, which is very nice to hear! So, Stories of Apple gets a scoop here: because of all the nice feedback I’ve gotten lately, I’ve started work on a Mac OS X update of CLImax which will support many other programming languages besides AppleScript.