Lably
Skip to content

Bs (programming language)

  • 8 min read
  • 4 chapters

Related on Lably

Through Unix shell, BASIC and Interpreter (computing)

An early man page states, "[bs] is a remote descendant of Basic [sic] and SNOBOL4, with a little C thrown in."

History

The bs command appears in UNIX System III Release 3.0 (1980), first released outside of Bell Labs in 1982. It was written by Dick Haight (Richard C. Haight) circa 1978, who recounts it as follows:

I wrote bs at the time Unix (V 3?) and all of the commands were being converted from assembler to C. So [ Ken Thompson’s ] bas became my bs — sort of.

The Release 3.0 manual mentions bs prominently on page 9 (emphasis added):

Writing a program. To enter the text of a source program into a UNIX file, use ed(1). The four principal languages available under UNIX are C (see cc(1)), Fortran (see f77(1)), bs (a compiler/interpreter in the spirit of Basic, see bs(1)), and assembly language (see as(1)).

While not released outside prior to System III, the bs command was present internally in UNIX/TS 1.0 (November 1978), PWB/UNIX 2.0 (June 1979), and CB UNIX editions 2.1 (November 1979) and 2.3 (1981). The bs command does not appear in some earlier internal releases, e.g., the UNIX Support Group’s March 1977 release, nor the PWB/UNIX manual dated May, 1977, suggesting its creation circa 1978. It does not appear in any version of Research Unix nor the Berkeley Software Distribution.

Subsequently and into the 1990s, bs was included in a variety of System III-derived or System V-derived commercial operating systems including, but not limited to: PC/IX; UNIX System V Releases 2 & 3: SVR2, SVR3, SVR3.2 (1986); HP-UX; AIX; and A/UX. (The User's Manual for the AT&T UNIX PC (3B1) specifically mentions that the bs command is not available, but that it is available on SVR3.2.)

Occasionally, bs was touted as one of the primary programming languages for development under UNIX. However, bs is not included in the POSIX.1 commands and utilities (the standard List of Unix commands) nor in the Single UNIX Specification and is not provided with most contemporary operating systems. For example in Linux, similar syntax and functionality is provided by bc, Perl, and POSIX shell.

In the 21st century, bs is present in, at least, HP-UX Release 11i (2000), as well as AIX versions 6.1 (2007) and 7.2 (2018), likely due to their UNIX System V heritage.

Sign in to keep reading

3 more chapters are free with a Lably account.

More in Computing and communication