To view parent comment, click here.
To read all comments associated with this story, please click here.
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.




Member since:
2005-11-10
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.