Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!mailrus!csd4.milw.wisc.edu!uxc!uxc.cso.uiuc.edu!m.cs.uiuc.edu!p.cs.uiuc.edu!gillies From: gillies@p.cs.uiuc.edu Newsgroups: comp.lang.misc Subject: Re: Xerox PARC's Cedar (garbage col Message-ID: <82100008@p.cs.uiuc.edu> Date: 29 May 89 22:41:00 GMT References: <2248@valhalla.ee.rochester.edu> Lines: 50 Nf-ID: #R:valhalla.ee.rochester.edu:2248:p.cs.uiuc.edu:82100008:000:2814 Nf-From: p.cs.uiuc.edu!gillies May 29 17:41:00 1989 Xerox released MESA to universities in 1985. I'm not sure what these universities had to sign, but they were given full documentation (the MESA programming language, the Pilot kernel operating system, and the Tajo development environment). Big corporate customers like Boeing were also given these things. At least 20 universities received a grant of 20 machines or more, and the documentation. One thing that Xerox DID NOT disclose was the architecture of the Dandelion processor, and the microcoded machine language for the MESA processor. In the late 1970's this was something great, but in today's world of megabyte programs it is something incredibly crufty, like the 8088. Cedar is PARC's guess at the programming technology of the 1990's -- they started with MESA as the basis language. MESA is a strongly typed algorithmic language like PASCAL, with complexity that lays between MODULA-II+ and ADA (incidentally, the DoD once asked Xerox to disclose MESA, to avoid/help with the development of ADA. Xerox in its infinite wisdom decided to keep MESA a secret). PARC added features to give it the ability to be "type-safe". These features include garbage collection, string handling, and automatic compiler checks for the "safe" subset of the language. One of the unique things about MESA is that you can develop dangerous non-safe code (e.g. memory smashing is possible), and then turn on the safety checking and debug the danger out of your code. The last thing I heard was they were rewriting the Pilot O/S to be completely type-safe. They were also working on a machine-independent version of the Cedar language, called Mimosa. Cedar is also the development environment that runs on dorados (about the speed of a NeXT, with a turbo I/O system) . There are some really crufty things about this environment, and some other very beautiful things. For more information, see the many papers in the annual ACM SOSP proceedings for the last 5 years. Some of the amazing things of Cedar include protocol compilers, user interface compilers, and incredible configuration management software. But it shows it age, with some baroque drawbacks (such as a wierd file system like the Mac's MFS, general fragility/crashability, and language drawbacks due to the stale hardware architecture). The NeXT user interface / development environment, which was recently written from scratch by a development team that included many ex-Xerox programmers, is probably cleaner and more desirable. I was a developer in the Xerox XNS mail/clearinghouse team from summer 1984 to the summer of 1986. Anyone wish to carry the story further? Don Gillies, Dept. of Computer Science, University of Illinois 1304 W. Springfield, Urbana, Ill 61801 ARPA: gillies@cs.uiuc.edu UUCP: {uunet,harvard}!uiucdcs!gillies