GEOS managed to offer nearly all the functionality of the original Mac in a 1 MHz computer with 64 Kilobytes of RAM. It wasn't an OS written to run on a generic x86 chip on a moving hardware platform. It was written using immense knowledge of the hardware and the tricks one could use to maximise speed. Note:After a small break, here is another one of the articles for the Alternative OS contest.

It had a postscript-like imaging model, complete with outline font technology and separate rotation, translation & scaling matrices for both the application and the UI. (a leaf from Mac OS X's book; 10 years before)

Here it sounds like GEOS did this 10 years before anybody else, which is a bit far fetched. Mac OSX is really NeXTstep version 5. NeXTstep had real display postscript right from the start, and had its first release in 1988. I think this makes for a closer race than the article indicates.

I don't know the history of GEOS, but I gather that it was originally released in 1986. Did it incorporate the "postscript-like imaging model" at this point? Did it even have it before NeXT? (And postscript-like doesn't mean actual Postscript(tm), right?)

I can't say I know a lot about NeXT systems, so indeed, you may be true. There are two main strains of GEOS, the 6502 version, and the x86 version. Both are entirely different operating systems. PC/GEOS which included the object orientated UI model, was started around 1989.

PC/GEOS's UI model had a few extra tricks up its sleeve though. PC/GEOS's UI was entirely object orientated. When Brian describes being able to change one thing into another, he isn't talking about fancy skins. The UI elements in an app were described in data, and the UI would represent that data according to the UI being used.

For example, a menu in a program could be realised as a menu, or a bullet list, or a folding tree structure, or, anything you could imagine with that dataset. This goes far beyond simple skinning in KDE, or even Cocca on OS X.

Thanks for elaborating, this sounds really interesting. The UI is data in Cocoa as well though. It sounds like GEOS and NeXT has alot in common here.

My comment on the "10 years before" business is strengthened by your reply. Mac OS X is a direct descendent of a system which had display postscript before GEOS picked up a similar idea. Apple reimplemented it as display PDF, but that was only done because the license fees involved with Postscript made the system too expensive for the home user market.

To continue on with the UI concepts. The UI had about a dozen basic classes you could pick from. You would create the object you wanted, and specify hints that told the OS what the object was for. The OS would figure out how to visually represent the object.

It really made UI programming so much simpiler than in other GUIs, where you have a seperate class with a different API for each variation of widget.

Also, by default, the UI of a GEOS app ran on a seperate thread from the processing. That made sure the UI always ran smoothly.