Bravo (software)

Bravo was the first WYSIWYG document preparation program.[1] It provided multi-font capability using the bitmap displays on the Xerox Alto personal computer. It was produced at Xerox PARC by Butler Lampson, Charles Simonyi and colleagues in 1974.

Bravo was a modal 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 the character buffer. Bravo made extensive use of the mouse 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 of graphical 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. with justification, 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 a resolution of 72 pixels per inch, but the laser 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 with word processing systems).

The 72 PPI pixel size closely approximated the 72.27 points 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 for Gypsy, a later document system on the Alto, the first with a modern graphical user interface.

Bravo was followed by BravoX, which was developed 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 in BCPL for the Xerox Alto, BravoX was later re-implemented in a language called "Butte" ("a Butte is a small Mesa", as Charles Simonyi used to say). Alto BCPL compiled into DCC 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.

EDIT command

Early versions of Bravo featured a peculiar bug in which the command "EDIT" in command-mode would irreversibly replace all text with a "T". The "e" was interpreted to select everything. The "d" would delete everything selected. The "i" would switch back to input-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]


  1. 1 2 Borenstein, Nathaniel S. (1991). Programming as if people mattered : friendly programs, software engineering, and other noble delusions (4. print. ed.). Princeton, N.J.: Princeton University Press. p. 132. ISBN 9780691087528.

Further reading

External links

This article is issued from Wikipedia - version of the 6/13/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.