From: billk@HAWK.CS.UKANS.EDU (Bill Kinnersley)
Newsgroups: comp.lang.misc
Subject: The Language List V1.7 - Part 7 of 8
Date: 6 Apr 92 14:19:42 GMT


PVM - Concurrent language?

Python - Guido van Rossum <guido@cwi.nl> 1991.  A high-level interpreted
language combining ideas from ABC, C, Modula-3, Icon, etc.  Intended for
prototyping or as an extension language for C applications.  Modules,
classes, user-defined exceptions.  "Linking a Stub Generator (AIL) to a
Prototyping Language (Python)", Guido van Rossum et al, Proc 1991 EurOpen
Spring Conf.  Available for Unix, Amoeba and Mac.
ftp: gatekeeper.dec.com:pub/plan/python and hp4nl.nluug.nl
list: python-list@cwi.nl

Q'NIAL - Queen's U.  A portable interpreter for NIAL, written in C.  "The
Q'NIAL Reference Manual", M.A. Jenkins, Queen's U Report, Dec 1983.  NIAL
Systems Ltd.  Versions for many PC's.

QA4 - Question-answering language.  A procedural calculus for intuitive
reasoning.  A LISP-based pattern-matching language for theorem proving. 
"QA4, A Language for Writing Problem-Solving Programs", J.F. Rulifson et
al, Proc IFIP Congress 1968.

QBE - Query By Example.  Moshe Zloof, IBM 1975.  A user-friendly query
language.  "QBE: A Language for Office and Business Automation", M.M.
Zloof, Computer pp.13-22 (May 1981).

Qlambda - "Queue-based Multi-processing Lisp", R. Gabriel & J. McCarthy,
Proc 1984 SYmp Lisp and Functional Prog, pp.25-44.

QLISP - 

  1. SRI 1973.  General problem solving, influenced by PLANNER.  QA4
features merged with INTERLISP.  "QLISP - A Language for the Interactive
Development of Complex Systems", E. Sacerdoti et al, NCC 45:349-356, AFIPS
(1976).

  2. A parallel LISP.  "Qlisp", R. Gabriel et al in Parallel Computation
and Computers for AI, J. Kowalik ed, 1988, pp.63-89.

QLOG - An integration of logic programming into LISP.  "QLOG - The
Programming Environment for Prolog in LISP", H.J. Komorowski in Logic
Prgramming, K.L. Clark et al eds, Academic Press 1982.

QPE - Two-dimensional pictorial query language.  "Pictorial Information
Systems", S.K. Chang et al eds, Springer 1980.

QUEASY - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

QUEL - Query language used by the database management system INGRES.

Quest - 

  1. A language designed for its simple denotational semantics.  "The
Denotational Semantics of Programming Languages", R. Tennent, CACM
19(8):437-453 (Aug 1976).

  2. Language with a sophisticated type system.  "Typeful Programming",
Luca Cardelli, DEC SRC RR 45, 1989.

QUICK - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

Quicksilver - dBASE-like compiler for MS-DOS from WordTech, Orinda, CA.

QUIKTRAN - FORTRAN-like, interactive with debugging facilities.  Sammet
1969, p.226.

QUIN - Pyle 1965.  Interactive language.  Sammet 1969, p.691.

Quintec-Objects - Based on Quintec (not Quintus) Prolog.  British.

Quty - Functional plus logic.  "Quty: A Functional Language Based on
Unification", M. Sato et al, in Conf Fifth Gen Computer Systems, ICOT 1984,
pp.157-165.

QX - (meaning "OK", from E.E. Smith SF books).  Richard Gillmann,  SDC,
Santa Monica.  Language for digital signal processing of digitized speech. 
Was part of SDC's speech recognition project.

Raddle - "On the Design of Large Distributed Systems", I.R. Forman, Proc
1st IEEE Intl Conf Comp Langs, pp.25-27 (Oct 1986).

RAIL - Automatix.  High-level language for industrial robots.

RAISE - Rigorous Approach to Industrial Software Engineering.  A
specification and design language.  ESPRIT project 315, CRI A/S, Denmark.

RAMIS II - Rapid Access Management Information System.  Database system. 
On-Line Software Intl.

Rapidwrite - Method for translating set of abbreviations into the much more
verbose COBOL code.  Sammet 1969, p.338.

RAPT - "An Interpreter for a Language for Describing Assemblies", R.J.
Popplestone et al, Artif Intell 14:79-107 (1980).

RASP - "RASP - A Language with Operations on Fuzzy Sets", D.D. Djakovic,
Comp Langs 13(3):143-148 (1988).

RATEL - Raytheon Automatic Test Equipment Language.  For analog and digital
computer controlled test centers.  "Automatic Testing via a Distributed
Intelligence Processing System", S.J. Ring, IEEE AUTOTESTCON 77 (Nov 1977).

RATFIV - Successor to RATFOR.

RATFOR - RATional FORTRAN.  Kernighan.  FORTRAN preprocessor to allow
programming with C-like control flow.  "Ratfor - A Preprocessor for a
Rational Fortran", B.W. Kernighan, Soft Prac & Exp 5:395-406 (Oct 1975). 
Featured in "Software Tools", B.W. Kernighan & P.J. Plauger, A-W 1976.
ftp: wuarchive.wustl.edu: mirrors/unix-c/languages/ratfor.tar-z

RAWOOP-SNAP - Early system on IBM 1103 or 1103A.  Listed in CACM 2(5):16
(May 1959).

R:BASE - MS-DOS 4GL from Microrim.  Based on Minicomputer DBMS RIM.  Was
Wayne Erickson the author?

RBCSP - "A Communicating Sequential Process Language and Implementation",
T. Roper & J. Barter, Soft Prac & Exp 11(11):1215-1234 (Nov 1981).

rc - Tom Duff.  AT&T Plan 9 shell.  Lookalike by Byron Rakitzis
<byron@archone.tamu.edu>
ftp: archone.tamu.edu

RCC - An extensible language. [?]

RDL - Requirements and Development Language.  "RDL: A Language for Software
Development", H.C. Heacox, SIGPLAN Notices 14(9):71-79 (Sep 1979).

Real-Time Euclid - Real-time language, restriction to time-bounded
constructs.  "Real-Time Euclid: A Language for Reliable Real-Time Systems",
E. Kligerman et al, IEEE Trans Software Eng SE-12(9):941-949 (Sept 1986).

Real-Time Mentat - An extension of C++.  "Real-Time Mentat: A Data-Driven
Object-Oriented System", A.S. Grimshaw et al, Proc IEEE Globecom, Nov 1989
pp.232-241.

Real-Time Pascal - Later name for Pascal-80 by RC Intl, Denmark.

REC - Regular Expression Converter.  See CONVERT.

Recital - dBASE-like language/DBMS from Recital Corp.  Versions include
VAX/VMS.

RECOL - REtrieval COmmand Language.  CACM 6(3):117-122 (Mar 1963).

RED - (Also "REDL").  Intermetrics.  A language proposed to meet the
Ironman requirements which led to Ada.  "On the RED Language Submitted to
the DoD", E.W. Dijkstra, SIGPLAN Notices 13(10):27 (Oct 1978).

REDCODE - Proposed as a language for "battle programs" in corewars.  (See
Computer Recreations column in Scientific American.)

RediLisp - R.M. Keller, U Utah.  Dialect of Lisp used on the Rediflow
machine, a derivative of FEL.

REDUCE - Anthony Hearn, 1963.  Symbolic math, ALGOL-like syntax, written in
LISP.  "REDUCE, Software for Algebraic Computation", G. Rayna, Springer
1987.  Version: Reduce 2.
list: REDUCE-L@DEARN.BITNET
info: reduce@rand.org
server: reduce-netlib@rand.org

REF-ARF - "REF-ARF: A System for Solving Problems Stated as Procedures",
R.E. Fikes, Artif Intell J 1(1) (Spring 1970).

REFINE - ?
info: maria@kestrel.edu

Refined C (RC) - An extension of C to directly specify data access rights
so that flow analysis, and hence automatic parallelization, is more
effective.  Research implementations only.  "Refining A Conventional
Language For Race-Free Specification Of Parallel Algorithms," H.G. Dietz et
al, Proc 1984 Intl Conf on Parallel Proc, pp.380-382.

Refined Fortran (RF) - Similar to Refined C.  Research implementations
only.  "Refined FORTRAN: Another Sequential Language for Parallel
Programming," H.G. Dietz et al, Proc 1986 Intl Conf on Parallel Proc,
pp.184-191.

REG-SYMBOLIC - Early system on IBM 704.  Listed in CACM 2(5):16 (May 1959).

Relational Language.  Clark & Gregory.  First parallel logic language to
use the concept of committed choice.  Forerunner of PARLOG.  "A Relational
Language for Parallel Programming", K.L. Clark et al, Proc ACM Conf on
Functional Prog Langs and Comp Arch, pp.171-178, ACM 1981.

RELATIVE - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).

RELCODE - Early system on UNIVAC I or II.  Listed in CACM 2(5):16 (May
1959).

REL English - Rapidly Extensible Language, English.  A formal language
based on English.  "Practical Natural Language Processing: The REL System
as Prototype", Adv in Computers 13, Academic Press 1975.

RenderMan Shading Language.  "The RenderMan Companion", S. Upstill, A-W
1989, chaps 13-15.

RENDEZVOUS - Query language, close to natural English.  "Seven Steps to
Rendezvous with the Casual User", E. Codd in Data Base Management, J.W.
Klimbie et al eds, N-H 1974, pp.179-199.

REPL - Restricted EPL.  A subset of EPL (the efficient part) used to write
the core of Multics.

Required-COBOL - 1961.  Minimal subset of COBOL.  Later dropped entirely. 
Sammet 1969, p.339.

Retrieve - Tymshare Corp, 1960's.  Query language, inspired JPLDIS which
lead to Vulcan[1] and then to dBASE II.

Revised ALGOL 60 - Alternate name for ALGOL 60 Revised.  Sammet 1969,
p.773.

REXX - Restructured EXtended eXecutor.  Cowlishaw, IBM ca. 1979.  (Original
name: REX.  They also call it "System Product Interpreter").  Scripting
language for IBM VM and MVS systems, replacing EXEC2.  "Modern Programming
Using REXX", R.P. O'Hara et al, P-H 1985.  "The REXX Language: A Practical
Approach to Programming", M.F. Cowlishaw, 1985.  Versions: PC-Rexx for MS-
DOS, and AREXX for Amiga.
list: REXX-L@UIUCVMD.BITNET.

RIGAL - Language for compiler writing.  Data strucures are atoms,
lists/trees.  Control based on pattern-matching.  "Programming Language
RIGAL as a Compiler Writing Tool", M.I. Augustson, Inst of Math and CS of
Latvia U, 1987.

Rigel - Database language?  Based on Pascal.  Listed by M.P. Atkinson &
J.W. Schmidt in a tutorial presented in Zurich, 1989.

RLL - Representation Language Language.  A frame language.  "A
Representation Language Language", R. Greiner and D.B. Lenat, Proc AAAI-80,
1980.

RMAG - Recursive Macro Actuated Generator.  Robert A. Magnuson, NIH ca
1970.  Stand-alone macroprocessor for IBM 360/370 under VS or OS. Many
built-in features and a library of several hundred macros.  Several large
systems were written in RMAG to generate source code for languages such as
IBM JCL, IBM assembly language, COBOL.  There was also a system (SLANG:
Structured Language Compiler) which would generate 370 assembly language
from a pseudo-structured-programming language, based on Michael Kessler's
structure programming macros developed at IBM.  "Project RMAG--RMAG22
User's Guide", R.A. Magnuson, NIH-DCRT-DMB-SSS-UG103, NIH, DHEW, Bethesda,
MD 20205 (1977).

ROADS - Subsystem of ICES.  Sammet 1969, p.616.

ROBEX - ROBot EXapt.  Aachen Tech College.  Based on EXAPT.  Version:
ROBEX-M for micros.

Roff - Text formatting language/interpreter associated with Unix.  (see
groff, nroff, troff).

ROME - Experimental object-oriented language.  "The Point of View Notion
for Multiple Inheritance", B. Carre et al, SIGPLAN Notices 25(10):312-321
(OOPSLA/ECOOP '90) (Oct 1990).

Rossette - MCC.  Concurrent object-oriented language.

RPG - Report Program Generator.  IBM 1965.  For easy production of
sophisticated large system reports.  Versions: RPG II, RPG III, RPG/400 for
the IBM AS/400.  MS-DOS versions by California Software and Lattice.  (see
CL, OCL).

RPL-1 - Data reduction language.  Proc SJCC 30:571-575, AFIPS (Spring
1967).

RPL - Reverse Polish LISP.  Language used by HP-28 and HP-48 calculators.

RTC++ - Real-time extension of C++.  "Object-Oriented Real-Time Language
Design: Constructs for Timing Constraints", Y. Ishikawa et al, SIGPLAN
Notices 25(10):289-298 (OOPSLA/ECOOP '90) (Oct 1990).

RT-CDL - Real-Time Common Design Language.  Real-time language for the
design of reliable reactive systems.  "RT-CDL: A Real-Time Description
Language and Its Semantics", L.Y. Lin et al, 11th World Computer Congress
IFIP '89 pp.19-26 (Sep 1989).

RTL - Register Transfer Language.  Chris Fraser <cwf@research.att.com> & J.
Davidson, U Arizona early 80's.  Intermediate code for a machine with an
infinite number of registers, used for machine-independent optimization. 
The GNU C compiler gcc uses a version of RTL with LISP-like syntax.  RTL is
also incorporated into Davidson's VPCC (Very Portable C compiler) at U
Virginia.

RTL/1 - Real Time Language.  Barnes, ICI 1971.  A real-time language, the
predecessor of RTL/2.  "Real Time Languages for Process Control, J.G.P.
Barnes, Computer J 15(1):15-17 (Feb 1972).

RTL/2 - Barnes, ICI 1972.  Small real-time language based on ALGOL 68, with
separate compilation.  A program is composed of separately compilable
bricks (named modules) which may be datablock, procedure, or stack.  A
stack is a storage area for use as a workspace by a task.  The language is
block-structured and weakly typed.  Simple types are byte, int, frac and
real, no Boolean.  Compound types may be formed from arrays, records and
refs (pointers).  There are no user-defined types.  Control consists of if-
then-elseif-else-end, for-to-by-do-rep, block-endblock, switch, goto, and
label variables.  "RTL/2: Design and Philosophy", J.G.P. Barnes, Hayden &
Son, 1976.

Ruby -

  1. Hardware description language.  "Ruby - A Language of Relations and
Higher-Order Functions", M. Sheeran, Proc 3rd Banff Workshop on Hardware
Verification, Springer 1990.

  2. One of five pedagogical languages based on Markov algorithms, used in
"Nonpareil, a Machine Level Machine Independent Language for the Study of
Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London (1968). 
(cf. Brilliant, Diamond, Nonpareil, Pearl[3]).

RUFL - Rhodes University Functional Language.  Rhodes U, Grahamstown, South
Africa.  Miranda-like.

RUNCIBLE - Early system for math on IBM 650.  Listed in CACM 2(5):16 (May
1959).

RUSH - Remote Use of Shared Hardware.  ca 1966.  Interactive dialect of
PL/I, related to CPS.  "Introduction to RUSH", Allen-Babcock Computing
1969.  Sammet 1969, p.309.

Russell - (named for the British mathematician Bertrand Russell (1872-
1970)  A. Demers & J. Donohue.  A compact, polymorphically typed functional
language, with bignums and continuations.  Types are themselves
first-class values and may be passsed as arguments.  "Revised Report on
Russell", A. Demers et al, TR 79-389, Dept Cornell U 1979.
ftp: watserv1.waterloo.edu

RUTH - Harrison <D.A.Harrison@newcastle.ac.uk>.  Real-time language based
on LispKit.  Uses timestamps and real-time clocks.  "RUTH: A Functional
Language for Real-Time Programming", D. Harrison in PARLE: Parallel
Architectures and Languages Europe, LNCS 259, Springer 1987,
pp.297-314.

S - AT&T.  Statistical analysis.  "S: An Interactive Environment for Data
Analysis and Graphics", Richard A. Becker, Wadsworth 1984.

S3 - ALGOL-like system language for the ICL 2900 computer.

SAC - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
1959).

SAC-1 - Early symbolic math system.  G.E. Collins, Proc 2nd Symp Symb Alg
Manip pp.144-152 (1971).

SAC2 - Symbolic math system, compiles to FORTRAN or Common LISP. 
<jma@poly.polytechnique.fr>
  
SAD SAM - Query language by Lindsay.  Sammet 1969, p.669.

SAFARI - ON-line text editing system by MITRE.  Sammet 1969, p.685.

SAIL -

  1. Early system on Larc computer.  Listed in CACM 2(5):16 (May 1959).

  2. Stanford Artificial Intelligence Language.  Dan Swinehart & Bob
Sproull,  Stanford AI Project, 1970.  A large ALGOL-60-like language for
the DEC-10 and DEC-20.  Its main feature is a symbolic data system based
upon an associative store (originally called LEAP).  Items may be stored as
unordered sets or as associations (triples).  Processes, events and
interrupts, contexts, backtracking and record garbage collection.  Block-
structured macros.  "Recent Developments in SAIL - An ALGOL-based Language
for Artificial Intelligence", J. Feldman et al, Proc FJCC 41(2), AFIPS
(Fall 1972).  (see MAINSAIL).

SAINT - Symbolic Automatic INTegrator.  J. Slagle, MIT 1961.  Written in
LISP.  Sammet 1969, p.410.

SAL - 

  1. Single Assignment Language.

  2. Simple Actor Language.  A minimal actor language, used for pedagogical
purposes in "Actors, A Model of Concurrent Computation in Distributed
Systems", G. Agha, MIT Press 1986.

SALEM - "SALEM - A Programming System for the Simulation of Systems
Described by Partial Differential Equations", S.M. Morris et al, Proc SJCC
33(1), 1968.

S-Algol - Orthogonal data structures on Algol-60.  "S-Algol Language
Reference Manual", R. Morrison, TR CS/79/1 U St Andrews, 1979.  "An
Introduction to Programming with S-Algol", A.J. Cole & R. Morrison,
Cambridge U Press 1982.

SALT -

  1. Symbolic Assembly Language Trainer.  Assembly-like language
implemented in BASIC by Kevin Stock, now at Encore in France.

  2. Sam And Lincoln Threaded language.  A threaded extensible variant of
BASIC.  "SALT", S.D. Fenster et al, BYTE (Jun 1985) p.147.
 
Sandman - DoD requirements that led to APSE.

SAP - Symbolic Assember Program.  IBM 704 assembly language, late 50's.

SAS - Statistical Analysis System.  Statistical and matrix language,
PL/I-like syntax.  "A User's Guide to SAS", A.J. Barr, SAS Inst 1976.

SASL - Saint Andrews Static Language.  Turner 1976.  A derivative of ISWIM
with infinite data structures.  Fully lazy and weakly typed.  Designed for
teaching functional programming, with very simple syntax.  A version of the
expert system EMYCIN has been written in SASL.  "A New Implementation
Technique for Applicative Languages", D.A. Turner, Soft Prac & Exp 8:31-49
(1979).

SASL+LV - Unifies logic and functional programming.  A more complete
version of FGL+LV, in SASL syntax.  "Combinator Evaluations of Functional
Programs with Logical Variables", G. Bage et al, TR UUCS-87-027, U Utah,
Oct 1987.

Sather - (named for the Sather Tower at UCB, as opposed to the Eiffel
Tower)  Steve M. Omohundro, ICSI, Berkeley.  Eiffel-like, but smaller and
faster.  Clean and simple syntax, parameterized classes, multiple
inheritance, strong typing, garbage collection.  Compiles to C code.
ftp: icsi-ftp.berkeley.edu
list: sather-admin@icsi.berkeley.edu

SB-Prolog - Stony Brook Prolog.  PD Prolog implementation for Unix.
ftp: sbcs.sunysb.edu: pub/sbprolog/v3.0
     ux1.cso.uiuc.edu: amiga/fish/ff140 and ff141  Version 2.3.2 for Amiga

SCAN - 

  1. "A Parallel Implementation of the SCAN Language", N.G. Bourbakis, Comp
Langs 14(4):239-254 (1989).

  2. DEC. A real-time language.  [same as 1?]

SCEPTRE - Designing and analyzing circuits.  "SCEPTRE: A Computer Program
for Circuit and Systems Analysis", J.C. Bowers et al, P-H 1971.

Scheme - G.L. Steele & G.J. Sussman, 1975.  A LISP dialect, small and
uniform, with clean semantics.  Scheme is applicative-order and lexically
scoped, and treats both functions and continuations as first-class objects. 
"The Revised^4 Report on the Algorithmic Language Scheme", W. Clinger et
al, MIT (Nov 1991).
Implementations: Scheme84 (Indiana U), MacScheme (Semantic Microsystems),
PC Scheme (TI).  (see scm, T).
"Orbit: An Optimizing Compiler for Scheme", D.A. Kranz et al, SIGPLAN
Notices 21(7):281-292 (Jul 1986).
ftp: altdorf.ai.mit.edu: archive/scheme-7.0 (MIT-Scheme, Liar compiler)
     gatekeeper.dec.com: elk (for Suns)
     acorn.cs.brandeis.edu: gambit (compiler for 68K's)
list: scheme@mc.lcs.mit.edu
repository: nexus.yorku.ca:pub/scheme

Scheme-Linda - Ulf Dahlen, U Edinburgh, 1990.  On the Computing Surface and
the Symmetry.  "Scheme-Linda", U. Dahlen et al, EPCC-TN-90-01 Edinburgh
1990.

Schoonschip - Veltman, CERN, late 60's.  Symbolic math, especially High
Energy Physics.  Originally implemented in CDC-6600 and 7600 assembly
language, current versions include Atari ST, Sun 3.

SCL - Systems Control Language.  ICL2900 VME/B O/S command shell.  Block
structured, strings, superstrings (lists of strings), int, bool, array
types.  Can trigger a block whenever a condition on a variable value
occurs.  Macros supported.  Commands are treated like procedure calls. 
Default arguments.  "VME/B SCL Syntax", Intl Computers Ltd 1980.

scm - Aubrey Jaffer.  A small, portable implementation of scheme,
conforming to "Revised^3.99 Report on the Algorithmic Language Scheme". 
Versions for Unix, VMS, MS-DOS.
ftp: altdorf.ai.mit.edu:archive/scm

Scode - Internal representation used by the Liar compiler for MIT Scheme.

SCOOP - Structured Concurrent Object-Oriented Prolog.  "SCOOP, Structured
Concurrent Object-Oriented Prolog", J. Vaucher et al, in ECOOP '88, S.
Gjessing et al eds, LNCS 322, Springer 1988, pp.191-211.
 
SCOOPS - Scheme Object-Oriented Programming System.  TI, 1986.  Multiple
inheritance, class variables.
ftp: altdorf.ai.mit.edu:archive/scheme-library/unsupported/CScheme

Scratchpad I - Richard Jenks, Barry Trager, Stephen M. Watt & Robert S.
Sutor, IBM Research, ca 1971.  General-purpose language originally for
interactive symbolic math.  It features abstract parametrized datatypes,
multiple inheritance and polymorphism.  Implementations for VM/CMS and AIX. 
"Scratchpad User's Manual", RA 70, IBM (June 1975).  Version: Scratchpad
II.  "Scratchpad II Programming Language Manual", R.D. Jenks et al, IBM,
1985.
Scratchpad II Newsletter: Computer Algebra Group, TJWRC, Box 218, Yorktown
Hts, NY 10598.

Screenwrite - Simple query language.  Honeywell late 70's, Level 6 minis.

Scribe - Brian Reid.  A text-formatting language.

SCRIPT - 

  1. Early system on IBM 702.  Listed in CACM 2(5):16 (May 1959).

  2. Real-time language.  "A Communication Abstraction Mechanism and its
Verification", N. Francez et al, Sci Comp Prog 6(1):35-88 (1986).

SCROLL - String and Character Recording Oriented Logogrammatic Language. 
"SCROLL - A Pattern Recording Language", M. Sargent, Proc SJCC 36 (1970).

SDL -

  1. System Software Development Language.  System software for the B1700. 
"System Software Development Language Reference Manual", 1081346, Burroughs
Corp (Dec 1974).

  2. Specification and Description Language.  CCITT.  Specification
language for discrete interactive systems such as industrial process
control or traffic control.  Said to have a visual component?  Proc Plenary
Assembly, Melbourne 14-25 Nov 1988, Fasc X.1, CCITT.   "Telecommunications
Systems Engineering Using SDL", R. Saracco et al, N-H 1989.  (see XDL).

  3. Shared Dataspace Language.  "A Shared Dataspace Language Supporting
Large-Scale Concurrency", G. Roman et al, Proc 8th Intl Conf Distrib Comp
Sys, IEEE 1988, pp.265-272.

SDMS - Query language.

Sed - Stream editor.  The Unix stream editor.

SEESAW - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

Sel - 

  1. Self-Extensible Language.  "SEL - A Self-Extensible Programming
Language", G. Molnar, Computer J 14(3):238-242 (Aug 1971).

  2. Bharat Jayaraman.  "Towards a Broader Basis for Logic Programming", B.
Jayaraman, TR CS Dept, SUNY Buffalo, 1990.

Self - Small, dynamically-typed object-oriented language.  Based on
prototypes rather than inheritance.  "Self: The Power of Simplicity", David
Ungar et al, SIGPLAN Notices 22(12):227-242 (OOPSLA '87) (Dec 1987).
ftp: otis.stanford.edu
list: self-interest@self.stanford.edu
request: self-request@self.stanford.edu

Seneca - R. Griesemer, 1990.  Descendant of Oberon designed for numerical
applications on supecomputers, especially vector or pipelined
architectures.  Includes a standard COMPLEX type and special aray
expressions.  Still under development.  "Seneca - A Language for Numeridcal
Applications on Vectorcomputers", Proc CONPAR 90 - VAPP IV Conf.

SEPIA - Standard ECRC Prolog Integrating Applications.  Prolog with many
extensions including attributed variables ("metaterms") and declarative
coroutining.  "SEPIA", Micha Meier <micha@ecrc.de> et al, TR-LP-36 ECRC,
March 1988.  Version 3.1 available for Suns and VAX.  (see ECRC-Prolog).
info: sepia-request@ecrc.de

Seque - "Seque: A Programming Language for Manipulating Sequences", R.E.
Griswold et al, Comp Langs 13(1):13-22 (1988).

Sequel - Precursor to SQL.  "System R: Relational Approach to Database
Management", IBM Res Lab, San Jose, reprinted in Readings in Database
Systems.

SETL - SET Language.  Courant Inst, early 70's.  A very high level
set-oriented language.  Data types include sets (unordered collections),
tuples (ordered collections) and maps (collections of ordered pairs). 
Expressions may include quantifiers ('for each' and 'exists').  The first
Ada translator was written in SETL.  "Programming With Sets - An
Introduction to SETL", Jacob T. Schwartz et al, Springer 1986.

SETL2 - SETL with more conventional Ada-like syntax, lexical scoping, full
block structure, first-class functions and a package and library system. 
Kirk Snyder <snyder@spunky.cs.nyu.edu>.  "The SETL2 Programming Language",
W. Kirk Snyder, Courant Inst TR 490, Jan 1990.
ftp: cs.nyu.edu, for MS-DOS, OS/2, Mac, Unix workstations

SETL/E - U Essen.  Another derivative of SETL with Ada-like syntax. 
"SETL/E, A Prototyping System Based on Sets", E.E. Doberkat et al, in
Tagungsband TOOL90, W. Zorn ed, pp.109-118, U Karlsruhe, Nov 1990.

SETS - Set Equation Transformation System.  Symbolic manipulation of
Boolean equations.  "Efficient Ordering of Set Expressions for Symbolic
Expansion", R.G. Worrell et al, J ACM 20(3):482-488 (Jul 1973).

SEXI - String EXpression Interpreter.  Early name of SNOBOL.

SFD-ALGOL - System Function Description-ALGOL.  Extension of ALGOL for
synchronous systems.  Sammet 1969, p.625.

SFL - "SFL Language Definition Manual", TR 6413, Intl Computers Ltd.

SFLV - Unifies logic and functional programming.  SASL+LV with unification
moved from actual/formal parameter matching to equational clauses.  "Static
Analysis of Functional Programs with Logical Variables", G. Lindstrom in
Programming Languages Implementation and Logic Programming, P. Deransart et
al eds, LNCS 348, Springer 1988.

SGML - Standard Generalized Markup Language.  "SGML - The User's Guide to
ISO 8879", J.M. Smith et al, Ellis Harwood, 1988.  ISO/IEC 8879-1986.
ftp: star.cs.vu.nl:Sgml  an SGML parser
     mailer.cc.fsu.edu:pub/sgml  another SGML parser

sh - (or "Shellish").  S.R. Bourne.  Command shell interpreter and script
language for Unix.  "Unix Time-Sharing System: The Unix Shell", S.R.
Bourne, Bell Sys Tech J 57(6):1971-1990 (Jul 1978).

SHACO - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

SHADOW - Barnett & Futrelle, 1962.  Syntax-directed compiler.  Predecessor
to SNOBOL?  Sammet 1969, p.448, 605.

SHEEP - Symbolic math, especially General Relativity.  I. Frick, Stockholm,
late 70's to early 80's.  Implemented in DEC-10 assembly language, then in
several LISP's.

SHELL - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
1959).

Short Code or SHORTCODE - John Mauchly, 1949.  Pseudocode interpreter for
math problems, on Eckert and Mauchly's BINAC, later on UNIVAC I and II. 
Possibly the first attempt at a higher level language.  Sammet 1969, p.129.

Show-And-Tell - Visual dataflow language designed for use by elementary
school children.  "A Visual Language for Keyboardless Programming", T.
Kimura et al, TR WUCS-86-6, CS Dept Washington U, Mar 1986.  "Show and
Tell: A Visual Language", T.D. Kimura et al in Visual Programming
Environments: Paradigms and Systems, E.P. Glinert ed, IEEE Comp Sci Press,
1990, pp.397-404.

SICStus Prolog - SICS (Swedish Inst of Comp Sci), Sweden.
info: sicstus-request@sics.se
list: sicstus-users@sics.se

SIFT - SHARE Internal FORTRAN Translator.  Translation utility designed for
converting FORTRAN II to FORTRAN IV.  The word "sift" was often used as a
verb to describe converting code from one language to another.  Sammet
1969, p.153.

Sig - Signal Processing, Analysis, and Display program.  This is an
environment with an associated programming language. Jan Carter, Argonne
Natl Lab, (312)972-7250.

SIGLA - SIGma LAnguage.  Olivetti.  Language for industrial robots. 
"SIGLA: The Olivetti Sigma Robot Programming Language", M. Salmon, Proc 8th
Intl Symp on Industrial Robots, 1978, pp.358-363.

SIGNAL - Synchronous language.  Le Guernic et al, "SIGNAL - A Data
Flow-Oriented Language for Signal Processing," P. le Guernic, IEEE Trans
Acoustics Speech & Signal Proc, ASSP-34(2):362-374 Apr 1986.

SIL - "SIL - A Simulation Language", N. Houbak, LNCS 426, Springer 1990.

Sil/2 - Language for implementation of portable interpreters.  "The Design
of Transportable Interpreters", F. Druseikis, SNOBOL4 Project Document
S4D49, U Arizona (Feb 1975).

Silage - Synchronous DSP specification language.  "Silage Reference Manual,
Draft 1.0", D.R. Genin & P.N. Hilfinger,  Silvar-Lisco, Leuven 1989.

Simone - A. Hoare et al.  Simulation language based on Pascal. 
"Quasiparallel Programming", W.H. Kaubisch et al, Soft Prac & Exp 6:341-356
(1976).

SIMPLE - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
1959).

SIMPL-T - Base language for a family of languages and compilers. 
"SIMPL-T, A Structured Programming Language", V.R. Basili, Paladin House
1976.

SIMSCRIPT - Rand Corp 1963.  Large discrete simulations, influenced Simula. 
"SIMSCRIPT: A Simulation Programming Language", P.J. Kiviat et al, CACI
1973.  Versions: SIMSCRIPT I.5, SIMSCRIPT II, SIMSCRIPT II.5.  CACI,
(619)457-9681.

SIMULA - SIMUlation LAnguage.  Kristen Nygaard & Ole-Johan Dahl, designed
1962, implemented 1964.  Extension to ALGOL for discrete simulation. 
Sammet 1969, p.659.

SIMULA 67 - Introduced the class concept, leading the way to data
abstraction and object-oriented programming.  Also coroutines.
ftp: rascal.ics.utexas.edu, Mac version

Simulating Digital Systems - FORTRAN-like language for describing computer
logic design.  Sammet 1969, p.622.

SINA - "An Implementation of the Object-Oriented Concurrent Programming
Language SINA", A. Tripathi et al, Soft Prac & Exp 19(3):235-256 (1989).

SIPLAN - SIte PLANning computer language.  Interactive language for space
planning.  "Formal Languages for Site Planning", C.I. Yessios in "Spatial
Synthesis for Computer-Aided Design", C. Eastman ed, Applied Science Publ
1976.

Siprol - Signal Processing Language.  A DSP language.  "SIPROL: A High
Level Language for Digital Signal Processing", H. Gethoffer, Proc
ICASSP-80, 1980, pp.1056-1059.

SIR - Early system on IBM 650.  Listed in CACM 2(5):16 (May 1959).

SISAL - Streams and Iteration in a Single Assignment Language.  James
McGraw et al, U Manchester, Lawrence Livermore, DEC and CSU 1983.  Single
assignment language with strict semantics, automatic parallelization,
efficient execution.  Outputs a dataflow graph in IF1 (Intermediary Form
1).  Derived from VAL, adds recursion and finite streams.  Pascal-like
syntax.  Designed to be a common high-level language for numerical programs
on a variety of multiprocessors.  "A Report on the SISAL Language Project",
J.T. Feo et al, J Parallel and Distrib Computing 10(4):349-366 (Dec 1990). 
Implementations exist for Cray X-MP, Y-MP, Cray-2, Sequent, Encore Alliant,
dataflow architectures, transputers and systolic arrays.
contact: David Cann <cann@lll-crg.llnl.gov>, Rod Oldehoeft
<rro@cs.colostate.edu>.
ftp: sisal.llnl.gov:pub/sisal

Sketchpad - I. Sutherland, 1963.  Computer-aided design.  Constraints using
value inference.  Introduced the "ring" list structure.  "Sketchpad: A Man-
Machine Graphical Communication System", I.E. Sutherland, MIT Lincoln Lab,
TR 296 (Jan 1963).  Sammet 1969, p.678.

Skim - Alain Deutsch <deutsch@poly.polytechnique.fr> et al, France.  Scheme
implementation with packages and other enhancements.

SKOL - FORTRAN pre-processor for COS (Cray Operating System).

SL5 - String and list processing language with expression-oriented syntax. 
Coroutines.  "An Overview of SL5", Ralph E. Griswold, SIGPLAN Notices
12(4):40-50 (Apr 1977).

SLANG - 

  1. R.A. Sibley.  CACM 4(1):75-84 (Jan 1961).

  2. Set LANGuage.  Jastrzebowski, ca 1990.  A C extension with set-
theoretic data types and garbage collection.  "The SLANG Programming
Language Reference Manual, Version 3.3", W. Jastrzebowski
<wojtek@loml.math.yale.edu>, 1990.

  3. Structured LANGuage.  Michael Kessler, IBM.  A language based on
structured programming macros for IBM 370 assembly language.  "Project
RMAG: SLANG (Structured Language) Compiler", R.A. Magnuson, NIH-
DCRT-DMB-SSS-UG105, NIH, DHEW, Bethesda, MD 20205 (1980).

  4. "SLANG: A Problem Solving Language for Continuous-Model Simulation and
Optimization", J.M. Thames, Proc 24th ACM Natl Conf 1969.

SLIP - Symmetric LIst Processsor.  J. Weizenbaum, early-60's.  List
processing subroutine package for FORTRAN, later also embedded in MAD and
ALGOL.  "Symmetric List Processor", J. Weizenbaum CACM 6:524-544(1963). 
Sammet 1969, p.387.

SLIPS - "An Interpreter for SLIPS - An Applicative Language Based on
Lambda-Calculus", V. Gehot et al, Comp Langs 11(1):1-14 (1986).

SLLIC - Intermediate language developed at HP.  An infinite-register
version of the Precision Architecture instruction set?

Sloop - "Parallel Programming in a Virtual Object Space", S. Lucco, SIGPLAN
Notices 22(12):26-34 (OOPSLA '87) (Dec 1987).

SMALGOL - SMall ALGOL.  Subset of ALGOL 60.  "SMALGOL-61", G.A. Bachelor et
al CACM 4(11):499-502 (Nov 1961).  Sammet 1969.

Small-C - A subset of C.  Compiler source in C producing 8080 code in Dr
Dobb's J, May 1980 and Dec 1982.  "The Small-C Handbook," James Hendrix,
Reston 1984.
ftp: apple.com:ArchiveVol1/unix_lang

Smalltalk - Software Concepts Group, Xerox PARC, led by Alan Kay, early
70's.  Took the concepts of class and message from Simula-67 and made them
all-pervasive, the quintessential object-oriented language.  Innovations
included the bitmap display, windowing system and use of mouse.  Early
versions: Smalltalk-72, Smalltalk-74, Smalltalk-76 (inheritance taken from
Simula, and concurrency), and Smalltalk-78.  "The Smalltalk-76 Programming
System Design and Implementation", D.H. Ingalls, 5th POPL, ACM 1978, pp.9-
16.

Smalltalk-80 - "Smalltalk-80: The Language and Its Implementation" ("The
Blue Book"), Adele Goldberg et al, A-W 1983.  BYTE 6(8) (Aug 1981).
archive: st.cs.uiuc.edu:pub/ISA
ftp: prep.ai.mit.edu:pub/gnu  GNU Smalltalk v1.1
archive: st.cs.uiuc.edu:pub/MANCHESTER
mail server: goodies-lib@r5.cs.man.ac.uk

Smalltalk/V - First widely available version of Smalltalk, for PC, Mac. 
Digitalk, 1986.

SmallWorld - Object-oriented language.  "SW 2 - An Object-based Programming
Environment", M.R. Laff et al, IBM TJWRC, 1985.

SMART - For MS-DOS?

SMIL - Machine language for a Swedish computer.
ftp: wuarchive.wustl.edu:mirrors/info-mac/lang/smil-emulator.hqx

SML - 

 1. Standard ML.  R. Milner <rm@lfcs.edinburgh.ac.uk> ca. 1984.  Aimed to
unify the dialects of ML, has evolved into a robust general-purpose
language.  Functional, with imperative features.  Environment based,
strict.  Adds to ML the call-by-pattern of Hope, recursive data types,
reference types, typed exceptions, and modules.  "A Proposal for Standard
ML", R. Milner, ACM Symp on LISP and Functional Prog 1984, pp.184-197. 
Implementations:
SML/NJ Version 0.75 ftp: cs.yale.edu:pub/ml and research.att.com:dist/ml
POPLOG ML (Sussex)
Poly/ML (Abstract Hardware Ltd <ahl@ahl.co.uk>)
Edinburgh SML 4.0 (core language only) info: <lfcs@ed.ac.uk>
list: sml-request@cs.cmu.edu
ftp: sbcs.sunysb.edu, a lazy version

  2. Small Machine Language.  Barnes, ICI 1969.  Real-time language, an
ALGOL variant, and the predecessor of RTL.  "SML User's Guide", J.G.P.
Barnes, ICI, TR JGPB/69/35 (1969).

SML/NJ - Standard ML of New Jersey.  An implementation of SML by Andrew
Appel at Princeton <Appel@princeton.edu> and Dave MacQueen at AT&T
<dbm@research.att.com>.  "Standard ML of New Jersey", A. Appel et al, "Proc
Third Intl Symp on Prog Lang Impl and Logic Programming", LNCS Springer
1991.  Versions for Unix, Mac
ftp: research.att.com
    
SMoLCS - Specification metalanguage used for a formal definition of Ada. 
"An Introduction to the SMoLCS Methodology", E. Astesiano, U Genova 1986.

SMP - Steven Wolfram's earlier symbol manipulation program, before he
turned to Mathematica.  "SMP Handbook", C. Cole, S. Wolfram et al, Caltech
1981.

SNAP - 

  1. Early interpreted text-processing language for beginners, close to
basic English.  "Computer Programming in English", M.P. Barnett, Harcourt
Brace 1969.

  2. "Some Proposals for SNAP, A Language with Formal Macro Facilities",
R.B. Napper, Computer J 10(3):231-243 (1967). [same as 1?]

SNOBOL - StriNg Oriented symBOlic Language.  David Farber, Ralph Griswold &
I. Polonsky, Bell Labs 1962-3.  String processing language for text and
formula manipulation.  "SNOBOL, A String Manipulating Language", R.
Griswold et al, J ACM 11(1):21 (Jan 1964).

SNOBOL3 - 1965.  SNOBOL with user-defined functions.  "The SNOBOL3
Programming Language", D.J. Farber et al, Bell Sys Tech J 45(6):895-944
(Jul 1966).

SNOBOL4 - Griswold et al, 1967.  Quite distinct from its predecessors. 
Declarative with dynamic scope.  Patterns are first-class data objects that
can be constructed by concatenation and alternation.  Success and failure
used for flow control.  Delayed (unevaluated) expressions can be used to
implement recursion.  Table data type.  Strings generated at run-time can
be treated as programs and executed.  "The SNOBOL4 Programming Language",
Ralph E. Griswold et al, P-H 1971.
ftp: apple.com:ArchiveVol1/unix_lang

FASBOL - "FASBOL. A SNOBOL4 Compiler", P.J. Santos, Memo ERL-M134, UC
Berkeley 1971.

SITBOL - "SITBOL Version 3.0", J.F. Gimpel, TRS4D30b, Bell Labs 1973.

SNOOPS - Craske, 1988.  An extension of SCOOPS with meta-objects that can
redirect messages to other objects.  "SNOOPS: An Object-Oriented language
Enhancement Supporting Dynamic Program Reeconfiguration", N. Craske,
SIGPLAN Notices 26(10): 53-62 (Oct 1991).

SO 2 - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

SOAP - Symbolic Optimal Assembly Program.  IBM 650 assembly language. 
"Optimal" refers to rearranging instructions on slowly rotating drum
memory.  Listed in CACM 2(5):16 (May 1959). Versions: SOAP I, SOAP II, CASE
SOAP III.

SOAR - A. Newell.  A general problem-solving production system
architecture, intended as a model of human intelligence.  "Soar: An
Architecture for General Intelligence", J.E. LAird et al, Art Intell 33(1)
(1987).
info: soar@cs.cmu.edu
doc: soar-doc@cs.cmu.edu

SOCRATIC - [Not a language?]  Bolt, Beranek & Newman.  Early interactive
learning system.  Sammet 1969, p.702.

SODAS - D.L. Parnas & J.A. Darringer.  Proc FJCC 31:449-474, AFIPS (Fall
1967).

SOHIO - Early system on IBM 705.  Listed in CACM 2(5):16 (May 1959).

SOL - 

  1. Simulation Oriented Language.  Discrete simulation.  Sammet 1969,
p.656.

  2. Second-Order Lambda calculus.  A typed lambda calculus.  "Abstract
Types have Existential Type", J. Mitchell et al, 12th POPL, ACM 1985,
pp.37-51.

Solve - Parallel object-oriented language.  "Message Pattern
Specifications: A New Technique for Handling Errors in Parallel Object-
Oriented Systems", J.A. Purchase et al, SIGPLAN Notices 25(10):116-125
(OOPSLA/ECOOP '90) (Oct 1990).

SP - Simplicity and Power.  Prolog-like.  "Simplicity and Power -
Simplifying Ideas in Computing", J.G. Wolff, Computer J 33(6):518-534 (Dec
1990).

SPADE - Specification Processing And Dependency Extraction.  Specification
language.  G.S. Boddy, ICL Mainframes Div, FLAG/UD/3DR.003

SPAR - Early system on Datatron 200 series.  Listed in CACM 2(5):16 (May
1959).

SPARKS - FORTRAN superset, used in "Fundamentals of Data Structures", E.
Horowitz & S. Sahni, Computer Science Press 1976.

Speakeasy - Simple array-oriented language with numerical integration and
differentiation, graphical output, aimed at statistical analysis. 
"Speakeasy", S. Cohen, SIGPLAN Notices 9(4), (Apr 1974).  "Speakeasy-3
Reference Manual", S. Cohen et al. 1976.

Spec - Specification language.  Expresses black-box interface
specifications for large distributed systems with real-time constraints. 
It incorporates conceptual models, inheritance and the event model.  A
descendant of MSG.84.  "An Introduction to the Specification Language
Spec", V. Berzins et al, IEEE Software 7(2):74-84 (Mar 1990).

SPECIAL - SRI specification language.  [HDM?]  "SPECIAL - A Specification
and Assertion Language", L. Robinson et al, TR CSL-46, SRI, Jan 1987.

SPECOL - "SPECOL - A Computer Enquiry Language for the Non-Programmer",
B.T. Smith, Computer J 11:121 (1968).

SPEED - Early system on LGP-30.  Listed in CACM 2(5):16 (May 1959).

Speedcoding - John Backus, 1953.  A pseudocode interpreter for math on IBM
701, IBM 650.  Sammet 1969, p.130.

Speedcoding 3 - Listed in CACM 2(5):16 (May 1959).

SPEEDEX - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).

SP/k - Subset PL/I, k=1..8.  A series of PL/I subsets, simplified for
student use.  "SP/k: A System for Teaching Computer Programming", R.C. Holt
et al, CACM 20(5):301-309 (May 1977).

SPG - System Program Generator.  A compiler-writing language.  "A System
Program Generator", D. Morris et al, Computer J 13(3) (1970).

SPIT - Language for IBM 650.  (see IT).

SPITBOL - SPeedy ImplemenTation of snoBOL.  "Macro SPITBOL - A SNOBOL4
Compiler", R.B.K. Dewar et al, Soft Prac & Exp 7:95-113, 1971.  Current
versions: SPITBOL-68000, Sparc SPITBOL.

SPL -

  1. Synchronous Programming Language.  A DSP language.  "Introduction to
the SPL Compiler", Computalker Consultants, 1986.

  2. Space Programming Language.  For spaceflight and aerospace software. 
Similar to JOVIAL.  Aka SPL/J6.  A subset is known as CLASP.  "Space
Programming Language Development", SAMSO TP 70-325, System Development Corp
(Sep 1970).

  3. System Programming Language.  HP, 1977.  An ALGOL-like language for
the HP3000 computer allowing inline assembly code.  MPE, the OS for the
HP3000 was written in SPL.  Pub.No.30000-90024, HP.

  4. Systems Programming Language.  PRIME Computer, 80's.  A variant of
PL/I used on PRIME computers.  PL/I subset G, less I/O plus a few
extensions.  SPL User's Reference Guide, Prime.  (see PL/P.)

SPLash! - 

  1. Software Research Northwest, 1987.  Compiler for SPL[3].

  2. Systems Programming LAnguage for Software Hackers.  Mentioned in "TeX
for the Impatient", Paul W. Abrahams, A-W 1990.

SPL/I - Signal Processing Language I.  Intermetrics.  General language
designed for acoustic signal processing.  Graphics and multiprocessing
features.  "SPL/I Language Reference Manual", M.S. Kosinski, Intermetrics
Report 172-1 (July 1976).

SPLINTER - PL/I interpreter with debugging features.  Sammet 1969, p.600.

SPLX - Specification Language for Parallel cross-product of processes and
Newsgroups: comp.lang.misc,comp.lang.functional,comp.object