Original author(s) | Butler Lampson,Charles Simonyi and colleagues |
---|---|
Developer(s) | Xerox PARC |
Initial release | 1974; 51 years ago (1974) |
Written in | BCPL |
Operating system | Alto Executive (Exec) |
Platform | Xerox Alto |
Available in | English |
Type | Word processor |
Bravo was the firstWYSIWYGdocument preparationprogram.[1] It providedmulti-font capability using thebitmapdisplays on theXerox Altopersonal computer. It was produced atXerox PARC byButler Lampson,Charles Simonyi and colleagues in 1974.[2]
Bravo was amodal editor—characters typed on the keyboard were usually commands to Bravo, except when in "insert" or "append" mode, in which case they were entered into thecharacter buffer. Bravo made extensive use of themouse for marking locations in the text, as well as selecting areas of the text, but it was not used for command entry. (Being at the very dawn ofgraphical user interface design, a non-command driven interface was judged too ambitious and possibly even inefficient and cumbersome.)
In addition to a long list of commands for controlling the formatting of the text (e.g. the ability to adjust left and right margins for sections of text, select fonts, etc.) Bravo also supported use of multiple buffers (i.e. files), and also multiple windows.
Although Bravo usually displayed the text with formatting (e.g. withjustification, fonts, and proportional spacing of characters), it did not normally attempt to reproduce the way a page would look in hardcopy. This was because the Alto monitor provided aresolution of 72pixels per inch, but thelaser printers used at PARC provided a resolution of 300 PPI. This meant that the screen could at best only provide an approximation of the way the page would look when printed. Instead, the normal display mode showed the text using character sizes, etc., more suited to the capability of the display.
There was a special display mode which did attempt to show the text exactly as it would appear when printed, and the normal command set worked in that mode as well. However, because the screen image was necessarily an approximation, one would occasionally find characters and words slightly off (a problem that continues to this day withword processing systems).
The 72 PPI pixel size closely approximated the 72.27points per inch used in the commercial printing industry, so that a pixel in Bravo would be the same size as a typeface point.
Bravo was the base forGypsy, a later document system on the Alto, the first with a moderngraphical user interface.
Bravo was followed by BravoX, which was developed in 1979[3] under Simonyi's leadership at Xerox's Advanced Systems Development (ASD) group. BravoX was "modeless", as was Gypsy. While Bravo (and BravoX) were originally implemented inBCPL for the Xerox Alto, BravoX was later re-implemented in a language called "Butte" ("a Butte is a smallMesa", as Charles Simonyi used to say). Alto BCPL compiled intoData General Nova machine instructions, which were in turn interpreted by Alto microcode. Butte compiled into Butte-specific byte codes, which were interpreted by special Alto microcode, similar to the Mesa bytecode interpreter.
Early versions of Bravo had a command interface designed such that a user attempting to enter the command "EDIT" in command-mode would instead irreversibly replace all text with a "T". The "e" was interpreted to selecteverything. The "d" woulddelete everything selected. The "i" would switch back toinput-mode with the "t" appearing as the only text. Only one action could be undone, so only the insertion of the t could be reversed.[1]