Hemlock (text editor)

Last updated

Hemlock is a free Emacs text editor for most POSIX-compliant Unix systems. It follows the tradition of the Lisp Machine editor ZWEI and the ITS/TOPS-20 implementation of Emacs, but differs from XEmacs or GNU Emacs, the most popular Emacs variants, in that it is written in Common Lisp rather than Emacs Lisp and C—although it borrows features from the later editors. Hemlock was originally written by the CMU Spice project in Spice Lisp (later renamed to CMU Common Lisp) for the PERQ computer. [1]

Hemlock is integrated with the Common Lisp compiler, interpreter, and development suite CMU Common Lisp, though it is possible to use it as a standalone editor, or to use GNU Emacs with CMUCL instead—Hemlock integrates better, but has fewer features and addon programs. One distinctive feature is that Hemlock distinguishes Lisp function names from interactive command names, which are given in a more natural-language-like style derived from the original MIT Lisp Machine editor Zmacs and TECO Emacs. It is able to display to a terminal, or use the CLX (Common Lisp X Library) for X11.

Other variants of Hemlock:

Related Research Articles

<span class="mw-page-title-main">Common Lisp</span> Programming language standard

Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 (S20018). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived from the ANSI Common Lisp standard.

The editor war is the rivalry between users of the Emacs and vi text editors. The rivalry has become an enduring part of hacker culture and the free software community.

<span class="mw-page-title-main">Emacs Lisp</span> Dialect of Lisp used as an Emacs scripting language

Emacs Lisp is a dialect of the Lisp programming language used as a scripting language by Emacs. It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter. Emacs Lisp is also termed Elisp, although there is also an older, unrelated Lisp dialect with that name.

An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools, and a debugger. Some IDEs, such as NetBeans and Eclipse, contain the necessary compiler, interpreter, or both; others, such as SharpDevelop and Lazarus, do not.

<span class="mw-page-title-main">XEmacs</span>

XEmacs is a graphical- and console-based text editor which runs on almost any Unix-like operating system as well as Microsoft Windows. XEmacs is a fork, based on a version of GNU Emacs from the late 1980s. Any user can download, use, and modify XEmacs as free software available under the GNU General Public License version 2 or any later version.

<span class="mw-page-title-main">Genera (operating system)</span> Symbolics operating system based on Lisp

Genera is a commercial operating system and integrated development environment for Lisp machines created by Symbolics. It is essentially a fork of an earlier operating system originating on the Massachusetts Institute of Technology (MIT) AI Lab's Lisp machines which Symbolics had used in common with Lisp Machines, Inc. (LMI), and Texas Instruments (TI). Genera was also sold by Symbolics as Open Genera, which runs Genera on computers based on a Digital Equipment Corporation (DEC) Alpha processor using Tru64 UNIX. In 2021 a new version was released as Portable Genera which runs on DEC Alpha Tru64 UNIX, x86_64 and Arm64 Linux, x86_64 and Apple M1 macOS. It is released and licensed as proprietary software.

<span class="mw-page-title-main">Gnus</span>

Gnus, or Gnus Network User Services, is a message reader which is part of GNU Emacs. It supports reading and composing both e-mail and news and can also act as an RSS reader, web processor, and directory browser for both local and remote filesystems.

<span class="mw-page-title-main">Zmacs</span> Text editor for Lisp machines

Zmacs is one of the many variants of the Emacs text editor. Zmacs was written for the MIT Lisp machine and runs on its descendants. Zmacs is written in Lisp Machine Lisp. It is based on the ZWEI programming substrate, which stands for "Zwei Was EINE Initially"; Zwei was a collection of routines which could be used to easily implement other programs, like the Symbolics mail program, Zmail.

CMUCL is a free Common Lisp implementation, originally developed at Carnegie Mellon University.

<i>Dunnet</i> (video game) 1982 video game

Dunnet is a surreal, cyberpunk text adventure written by Ron Schnell, based on a game he wrote in 1982. The name is derived from the first three letters of dungeon and the last three letters of ARPANET. It was first written in Maclisp for the DECSYSTEM-20, then ported to Emacs Lisp in 1992. Since 1994 the game has shipped with GNU Emacs; it also has been included with XEmacs.

<span class="mw-page-title-main">GNU Guile</span> Extension Language

GNU Ubiquitous Intelligent Language for Extensions is the preferred extension language system for the GNU Project and features an implementation of the programming language Scheme. Its first version was released in 1993. In addition to large parts of Scheme standards, Guile Scheme includes modularized extensions for many different programming tasks.

This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.

Lucid Incorporated was a Menlo Park, California-based computer software development company. Founded by Richard P. Gabriel in 1984, it went bankrupt in 1994.

<span class="mw-page-title-main">Dired</span>

Dired is a computer program for editing file system directories. It typically runs inside the Emacs text editor as a specialized mode, though standalone versions have been written. Dired was the first file manager, or visual editor of file system information. The first version of Dired was written as a stand-alone program independently in 1972 by Dave Lebling at Project MAC, and circa 1974 by Stan Kugell at the Stanford Artificial Intelligence Laboratory (SAIL). It was incorporated into GNU Emacs from the earliest versions, and re-implemented in C and C++ on other operating systems.

<span class="mw-page-title-main">Common Lisp Interface Manager</span>

The Common Lisp Interface Manager (CLIM) is a Common Lisp-based programming interface for creating user interfaces, i.e., graphical user interfaces (GUIs). It provides an application programming interface (API) to user interface facilities for the programming language Lisp. It is a fully object-oriented programming user interface management system, using the Common Lisp Object System (CLOS) and is based on the mechanism of stream input and output. There are also facilities for output device independence. It is descended from the GUI system Dynamic Windows of Symbolics' Lisp machines between 1988 and 1993.

... you can check out Common Lisp Interface Manager (CLIM). A descendant of the Symbolics Lisp machines GUI framework, CLIM is powerful but complex. Although many commercial Common Lisp implementations actually support it, it doesn't seem to have seen a lot of use. But in the past couple years, an open-source implementation of CLIM, McCLIM – now hosted at Common-Lisp.net – has been picking up steam lately, so we may be on the verge of a CLIM renaissance. – From Practical Common Lisp

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement. Its name has occasionally been shortened to GNUMACS. The tag line for GNU Emacs is "the extensible self-documenting text editor".

Clozure CL (CCL) is a Common Lisp implementation. It implements the full ANSI Common Lisp standard with several extensions. It contains a command line development environment, an experimental integrated development environment (IDE) for Mac OS X using the Hemlock editor, and can also be used with SLIME. Clozure CL is open source and the project is hosted by Clozure Associates.

<span class="mw-page-title-main">Emacs</span> Family of text editors

Emacs, originally named EMACS, is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, self-documenting, real-time display editor". Development of the first Emacs began in the mid-1970s, and work on its direct descendant, GNU Emacs, continues actively; the latest version is 28.2, released in September 2022.

<span class="mw-page-title-main">David A. Moon</span> American computer scientist

David A. Moon is a programmer and computer scientist, known for his work on the Lisp programming language, as co-author of the Emacs text editor, as the inventor of ephemeral garbage collection, and as one of the designers of the Dylan programming language. Guy L. Steele Jr. and Richard P. Gabriel (1993) name him as a leader of the Common Lisp movement and describe him as "a seductively powerful thinker, quiet and often insulting, whose arguments are almost impossible to refute".

References