Shell ancestry

A history (ahem) of command shells in Unix and Unix-like systems

Here’s a genealogy of shells descended from the first Unix shell, the Thompson shell. Each descendant appears at the year that it was first announced to the world. For example, S. R. Bourne announced his shell in the Bell System Technical Journal in 1978 but Bell released it to the world in 1979 or so.

Pull requests are encouraged and welcome.

Shell family tree
borrow Shell a borrows code from b.
clean Shell a attempts compatibility with, but does not use, b’s source code
closed Proprietary or closed license at the time that it was announced. Source for many formerly-closed shells are now available for us to look at. For example, Bell Labs released to source code to UNIX, available in a few links below.
open Has an open, free, or public license since its release.


The authors of a shell are the people credited at the time of the shell’s announcement. These links were last retrieved on February 9, 2019.

Almquist shell

Author: Kenneth Almquist

Also known as ash.

BRL shell

Authors: Doug A Gwyn, Doug Kingston, Ron Natalie, Arnold Robbins, Lou Salkind, and others?

C shell

Author: Bill Joy

Forsyth shell

Author: Charles Forsyth

I’ve corresponded with Charles Forsyth. He tells me that he ported his shell to MINIX 1 too.

Korn shell, ksh88, ksh93, ksh93q

Author: David G. Korn