I did a tonne of programming for PC GEOS, aka Geoworks. It was... very cool, in a retarded sort of way. It could do all kinds of awesome things; multithreading! Virtual memory! Vector fonts! Embedding applications in other applications! Pluggable look and feel! Long filenames! Ubiquitous databases everywhere! All on a 8086 with 640kB RAM.<p>But in order to <i>do</i> any of this you had to write programs in a custom C dialect called GOC, compile things with a ghastly mess of Perl and Borland C mangled together, and the architecture was inextricably entangled with the 8086 architecture so it was fundamentally non-portable. (Object-oriented machine code. <i>shudder</i>) There was a debugger. It required two PCs connected via a serial cable...<p>If anyone&#x27;s interested, I&#x27;ve got some source code here:<p><a href="http:&#x2F;&#x2F;cowlark.com&#x2F;geos-software&#x2F;index.html" rel="nofollow">http:&#x2F;&#x2F;cowlark.com&#x2F;geos-software&#x2F;index.html</a><p>(including an ELKS syscall translator which allows you to run Linux-86 binaries on GEOS! I think someone used it, once.)