Welcome to the Dictionary of Programming Languages, a compendium
of computer coding methods assembled to provide information and
aid your appreciation for computer science history.
Browse the dictionary by clicking on a section:
Get a full dump of the dictionary:
List of Names
- Language type:
The Bourne shell scripting language was
one of the original command languages for
the Unix operating system. It is a
simple interpreted language,
but widely used for
automating complex tasks and assembling
multi-step functionality from individual
The syntax of sh is line-oriented.
Sh has very limited data typing and scoping
features. Variables are usually called
'parameters'. The only data type for
parameters is string. Parameters
are global and dynamically scoped.
The shell language supports a modest but
complete set of control-flow constructs:
bounded and free loops, if-then-else, and
a powerful case statement. Sh also
supports a rudimentary error handling
facility for catching asynchronous
Modern versions of sh support named
functions, which may not be nested.
Function parameters are the only non-global
Strangely, sh has no support for computation,
all computations must be carried out by
calling Unix utilities like test
The basic boolean construct in sh
programming is the success or failure of
The shell language offers extensive special
syntax and features for running programs
and handling their I/O. One of the most
influential of these constructs was the
"pipe", a simple syntax for connecting
the output of one program to the input
The Bourne shell is included on all Unix
and Linux systems, and
more-or-less complete versions
are available for many other systems.
Documentation is included, and good
books are also available.
- See Also:
The ability to write complex programs in
sh language used to be considered a core
skill for Unix users, and it still is
for Unix system administrators.
For more sophisticated tasks, sh has
been superseded by Perl.
Since the early days of Unix, many different
shells have been created: C shell, Tenex
Korn shell, Bourne-Again Shell,
and many others.
Unix shell languages are interpreted,
as a rule. A variety of 'shell compilers'
have been written over the years, these
typically translate a shell script into
a C program with extensive reliance on a
- Sample code:
Descriptions in this dictionary are ©1997-99 Neal Ziring. Some
examples copyright of their respective authors. Some
technologies and languages are trademarked. Permission to
copy descriptions is granted as long as authorship credit is preserved.
Comments on this dictionary, corrections and suggestions, are all welcome.
Please use email, the address is email@example.com
[Ziring MicroWeb Home]
Dictionary and script maintained by Neal Ziring, last major modifications 3/18/98. Most recent
additions to dictionary and master list, 1/00.