
Eric Bier Demonstrates Cedar
About this video
Eric Bier, a PARC research scientist, demonstrates the Cedar integrated programming environment and language, an evolution of Mesa from Xerox PARC. The demo shows the Tioga editor, garbage collection, and a full graphical workstation environment.
Why it appears in the archive
HN keeps citing it as proof of how advanced a GC-based systems language and integrated workstation were decades ago, and as a model for what desktop OSes could be.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
Good that you mention Engelbart, because none of the mainstream desktop OSes are close to his ideas, or what the Xerox workstations allowed for, ironically Windows is probably the one most closest to it. While GNU/Linux have the necessary tooling for making it as well, but thanks to the fragmentation and some communities hatred against GNOME/KDE, it will never happen. This is what a modern desktop OS should look like, "Eric Bier Demonstrates Cedar" [VIDEO] Including the part of being written on a memory safe systems programming language.
Read original comment ↗Be prepared to be amazed with what Xerox PARC and others were doing, while Bell Labs was busy pushing for UNIX. "Eric Bier Demonstrates Cedar" [VIDEO] "Emulating a Xerox Star (8010) Information System Running the Xerox Development Environment (XDE) 5.0" [LINK] "Documents as User Interfaces Video Demo" [LINK] "SYMBOLICS S-PACKAGES 3D GRAPHICS AND ANIMATION DEMO" [LINK] "Alto System Project: Dan Ingalls demonstrates Smalltalk" [LINK] "Action!, the worlds first dynamic interface builder - 1988" (Interface Builder percursor, written in Lisp) [LINK] "The Interlisp programming environment" [LINK] And the cherry, how Lucid used Lisp ideas for their Energize C++ IDE, including an image based format for AST storage [LINK] [LINK]
Read original comment ↗Previous HN discussion about that video: [LINK] [VIDEO] I posted about PCR: [LINK] This is a great video! They discussed and demonstrate Cedar's early text selection, copy and move commands, and compare them to Larry Tesler’s cut and paste (which didn't require any special keys or more than one mouse button). The Tioga text editor and other Cedar applications made common operations like repeatedly copying text into a document from different places very easy and streamlined (fewer actions than cut, copy and paste), by using the shift key while selecting text. Cedar took full advantage of the three button mouse as well as the control and shift keys (for 12 combinations of actions in any context, that worked the same everywhere). I think SunView and maybe even OpenWindows also supported a similar (but obscure) “quick paste” mode, where you hold down the special “Copy” function key, select some text without disturbing the current input focus, cursor position, or text selection, and then when you release the key, that text is pasted into the current input focus at the current position, moving the cursor forward. That way you didn’t have to lose your current selection or position, in order to just select some other text and copy it in. Here, I found the code to do it in an old version of NeWS -- it was the cut key to move, or the paste key to copy, and it's called the "Secondary" selection (rank=Secondary): [LINK] % Cut key: Either delete the primary selection (stashing it % on the
Read original comment ↗There are definitely a lot of difficult issues and trade-offs about implementing true "WYSIWYG" editors that let you layout text and graphics that looks exactly the same on the screen and when printed. This Cedar demonstration video has some great examples of many of these issues. The Tioga text editor was "WYSIMOLWYG": what you see is more or less what you get. [VIDEO] Some problems were due to technology and aren't as bad any more. Cedar and NeWS used black-and-white screens and didn't have anti-aliased fonts. CPUs were much slower and memory was much tighter and graphics were not accelerated, so even with color displays (which were usually only 8 bits with a colormap that makes anti-aliasing very difficult), anti-aliased text wasn't practical. And fonts rendered at screen resolutions have totally different measurements than high resolution printed fonts, so words have different widths and get flowed and wrapped differently, so the formatting is quite different. NeWS had a "setprintermatch" primitive that makes the font rendering machinery use the official precise printer measurements for fonts, instead of the actual pixel screen measurements. That was useful for the PostScript previewer, and for editors previewing how formatted text will look. (There was a nice port of FrameMaker to NeWS, but I don't remember how its preview features worked.) But text rendered with printer metrics looks terrible and is hard to read, so you wouldn't want to actually edit text like that. NeW
Read original comment ↗It is inspired by it as the wikipedia[0] article notes. Both are inspired by Cedar/Mesa[1] from PARC. There is a great video of Eric Bier showing some of cedars capabilities on youtube[2]. [0] [LINK] [1] [LINK] [2] [VIDEO]
Read original comment ↗Here's another great historic oral history panel with a live demo of Xerox PARC's Cedar, including Eric Bier, Nick Briggs, Chris Jacobi, and Paul McJones: Eric Bier Demonstrates Cedar This interpretive production was created from archival footage of Eric Bier, PARC research scientist, demonstrating the Cedar integrated environment and programming language on January 24, 2019. Cedar was an evolution of the Mesa environment/language, developed at PARC’s Computer Science Laboratory originally for the Xerox Alto. Mesa was modular and strongly-typed, and influenced the later Modula family of languages. Cedar/Mesa ran on the D-machine successors to the Alto (such as the Dorado) and added features including garbage collection, and was later ported to Sun workstations. Cedar/Mesa’s integrated environment featured a graphical window system and a text editor, Tioga, which could be used for both programming and document preparation, allowing for fonts, styles, and graphics to be embedded in code files. The editor and all its commands were also available everywhere, including on the command console and in text fields. The demo itself is running through a Mac laptop remotely logged into Bier’s Sun workstation at PARC using X Windows. Bier demonstrates the Cedar development environment, Tioga editor, editing commands using three mouse buttons, sophisticated text search features, the command line, and the Gargoyle graphics editor, which was developed as part of Bier’s UC Berkeley Ph.D. diss
Read original comment ↗I'm surprised nobody mentioning the similarity of TeXmacs to Tioga editor within the legendary CEDAR desktop environment from Xerox [1]: I've read somewhere some years ago that if you can create a usable hybrid combination of MS Office Word document (WYSIWYG) and TeX then you have a killer application for document editor. Additionally, similar to Tioga with the fact that you can also use other programs inside TeXmacs (e.g. spreadsheet, Octave, etc) is a huge boon for productivity [2]. I think the naming of the TeXmacs does create confusion though since it creates the impression that this is combination of TeX and Emacs but it's neither of them. Just like the Holy Roman Empire after the collapsed of Roman Empire, it's neither Holy nor Roman nor an Empire. Now hoping for the modern incarnation version of CEDAR desktop environment. [1] [VIDEO] [2] [LINK]
Read original comment ↗Ah, what a delightful rabbit hole your comment led me down.. I've got about twenty tabs open now, articles on the history of (and the relationships between) programming languages and graphical user interfaces. Will enjoy this food for thought! My recent reading has included: Unix: A History and a Memoir (Brian Kernighan) - [LINK] The Development of the C Language (Dennis Ritchie) - [LINK] JavaScript: The First 20 Years (Brendan Eich) - [LINK] (PDF) This morning, this little phrase jumped out: > C was created on a tiny machine as a tool to improve a meager programming environment. What this made me realize is that a language is a user interface. It makes sense how C evolved with UNIX as an operating system, that a language is deeply fundamental to a computing environment (and its development). There's a parallel with JavaScript and Netscape. The language was meant to provide users with an interface to operate the web browser, create dynamic documents, and (as it turned out) to let users develop the web environment. ..Which brings me back to the Cedar/Tioga programming environment you mentioned. While searching around, I happened across another comment of yours (I see it's a favorite topic! :) and found the good stuff: Eric Bier Demonstrates Cedar - [VIDEO] (video) Active Tioga documents: an exploration of two paradigms - [LINK] (PDF) The Mesa Programming Environment - [LINK] (PDF) Fascinating. I saw a phrase, "active document applications", which interestingly is what the web
Read original comment ↗