Bernard Greenberg

Summary

Bernard S. Greenberg is a programmer and computer scientist, known for his work on Multics and the Lisp machine.

Projects edit

In 1978, Greenberg implemented Multics Emacs[1][2] using Multics Maclisp. The success of this effort influenced the choice of Lisp as the basis for later versions of Emacs.[3][4]

Greenberg was involved in the design of the "New Error System" at Symbolics, which in turn influenced the condition system adopted by ANSI Common Lisp.[5]

While working at Symbolics, Greenberg implemented the Lisp machine File System (LMFS).[6]

In 1987, Greenberg and Sonya Keene authored RFC 1037. NFILE - a file access protocol.

In 1994, nycsubway.org released Greenberg's NXSYS – a design environment for, and simulator of, the control signals used by the New York City Transit Authority’s signaling and control networks.[7] NXSYS provides an interactive 3D view from the perspective of a New York City Subway motorman. The source code for the latest version, v2.5.1, was published to github on 4-Feb-2022. This version is no longer buildable for Microsoft Windows but the older v2.1 Windows binaries and new v2.5.1 macOS binaries are available here. According to the online documentation, the NXSYS “relay language” is a subset of Lisp that describes subway track systems and control signal pathways; the subway simulation is actually run by the Lisp program, compiled by NXSYS, from the relay language source.[8]

Together with Thomas Milo, Greenberg is the author of Basis Technology's Arabic editor. It handles, among others, an improved version of the DMG (Deutsche Morgenländische Gesellschaft) transcription method, which supports reversible transcription and semi-reversible transliteration for Arabic text.

References edit

Citations edit

  1. ^ Bernard S. Greenberg. Multics Emacs: The History, Design and Implementation, http://www.multicians.org/mepap.html
  2. ^ Richard Stallman, 1981. EMACS: The Extensible, Customizable Display Editor, https://www.gnu.org/software/emacs/emacs-paper.html
  3. ^ Multics Lisp (Multics MacLisp) (SoftwarePreservation.org)
  4. ^ Jamie Zawinski's Emacs Timeline
  5. ^ Condition System, Revision #18 by Kent Pitman (12-Mar-88)
  6. ^ Blog entry (11-Nov-2007) Archived October 5, 2009, at the Wayback Machine by Daniel Weinreb
  7. ^ Somers, James (November 13, 2015), "Why New York Subway Lines Are Missing Countdown Clocks", The Atlantic
  8. ^ NYCSubway.org — Subway Signals: A Complete Guide: Bernard S. Greenberg. NXSYS, Signalling and Interlocking Simulator, http://www.nycsubway.org/wiki/NXSYS,_Signalling_and_Interlocking_Simulator#Download (Retrieved 22-Feb-2013)

Bibliography edit

  • Greenberg, Bernard S. (2002) [1997]. "Subway Signals: A Complete Guide". nycsubway.org.
  • Greenberg, B.; Keene, S. (December 1987). "NFILE - A File Access Protocol". ietf.org. IETF. RFC1037.
  • Greenberg, Bernard S. (1980), "Multics Emacs Extension Writers' Guide" (PDF), bitsavers.org, Waltham, MA: Honeywell Information Systems, CJ52
  • Greenberg, B. S. (August 1980). "Multics Emacs (Prose and Cons): A commercial text-processing system in Lisp". LFP '80: Proceedings of the 1980 ACM conference on LISP and functional programming. Stanford: ACM. pp. 6–12. doi:10.1145/800087.802784.
  • Greenberg, B. S. (March 1980). "Multics Emacs: an experiment in computer interaction". Proceedings of the Fourth Annual Honeywell Software Conference.
  • Greenberg, Bernard S.; Kissel, Katie (1979), Multics Emacs Text Editor User's Guide, Waltham, MA: Honeywell Information Systems, CH27
  • Greenberg, B. S. (1996) [1979]. "Multics Emacs: The History, Design and Implementation". multicians.org.
  • Greenberg, B. S. (1977). "The Multics MACLISP Compiler. The Basic Hackery. A tutorial". multicians.org. MIT.
  • Greenberg, B. S.; Webber, S. H. (1975). "The Multics Multilevel Paging Hierarchy". IEEE Intercon conference record (PDF). IEEE.
  • Greenberg, B. (May 1974), An Experimental Analysis of Program Reference Patterns in the Multics Virtual Memory (Thesis), Massachusetts Institute of Technology