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

sequential modules.  "Parallel Module Specification on SPLX", C.F. Nourani,
SIGPLAN Notices 27(1):114-115 (Jan 1992).

Spool - Object-oriented logic.  "An Experience with a Prolog Based
Language", K. Fukunaga et al, SIGPLAN Notices 21(11):224-231 (Nov 1986)
(OOPSLA '86).

SPRING - String PRocessING language.  "From SPRING to SUMMER: Design,
Definition and Implementation of Programming Languages for String
Manipulation and Pattern Matching", Paul Klint, Math Centre, Amsterdam
1982.

SPRINT - List processing language involving stack operations.  "SPRINT - A
Direct Approach to List Processing Languages", C.A. Kapps, Proc SJCC 30
(1967).  Sammet 1969, p 462.

SPS - Symbolic Programming System.  Assembly language for IBM 1620.

SPSS - Statistical Programs for the Social Sciences.  "SPSS X User's
Guide", SPSS Inc. 1986.

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

SQL - Structured Query Language.  IBM, 1970's, for use in SystemR.  The de
facto standard relational database interface language, often embedded in
other programming languages.  "A Guide to the SQL Standard," C.J. Date, A-W
1987.

Square - Query language, precursor to SQL.  "Specifying Queries as
Relational Expressions: The SQUARE Data Sublanguage", R.E. Boyce et al,
CACM 18(11):621-628 (Nov 1975).

SR - Synchronizing Resources.  A programming language for distributed
systems.  A 'resource' is the encapsulation of a process and its variables
in two parts: specification and body.  Processes interact via the
rendezvous, in which one calls an 'operation' in the other.  The call can
be either blocking or nonblocking.  The operation names can be changed
dynamically.  "An Overview of the SR Language and Implementation", G.
Andrews, ACM TOPLAS 10:51-86 (Jan 1988).
ftp: cs.arizona.edu, watserv1.waterloo.edu.

SRC Modula-3 - From DEC/SRC, Palo Alto, CA.  "Modula-3 Report (revised)"
Luca Cardelli et al.
ftp: gatekeeper.dec.com

SRDL - Small algebraic specification language, allows distfix operators. 
"A Constructive Method for Abstract Algebraic Software Specification", H.
Klaeren, Theor Computer Sci 30, pp.134-204, 1984.
 
Srl -

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

  2. Schema Representation language.  "SRL/2 Users Manual", J.M. Wright et
al, Robotics Inst, CMU, 1984.

  3. Structured Robot Language.  C. Blume & W. Jacob, U Karlsruhe.

SSL - Synthesizer Specification Language.  The definition language for the
Cornell Program Synthesizer Generator.  "Generating Language Based
Environments", T. Reps, MIT Press 1984.

STAB-11 - "The Translation and Interpretation of STAB-11", A.J.T. Colin et
al, Soft Prac & Exp 5(2):123-138 (Apr 1975).

STAGE2 - Macro language.

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

StarLISP - See *LISP.

StarMOD - See *MOD.

Steelman - DoD, 1979.  Fifth and last of the series of DoD requirements
that led to Ada.  "Requirements for High Order Programming Languages,
'Steelman'", June 1978.  SIGPLAN Notices 13(12) (Dec 1978).  (see Strawman,
Woodenman, Tinman, Ironman).

STENSOR - L. Hornfeldt, Stockholm, mid-80's.  Symbolic math, especially
General Relativity.  Implemented on top of SHEEP and MACSYMA.

STIL - STatistical Interpretive Language.  "STIL User's Manual", C.F.
Donaghey et al, Indust Eng Dept, U Houston (Aug 1969).

STOIC - STring Oriented Interactive Compiler.  Smithsonian Astrophysical
Observatory.  Similar to FORTH for strings, includes many VAX-specific
items.

Stoneman - HOLWG, DoD, Feb 1980.  DoD requirements that led to APSE, the
Ada Programming Support Environment.

STP4 - Statistical language.

Strand - 

  1. AND-parallel logic programming language.  Essentially flat Parlog83
with sequential-and and sequential-or eliminated.  "Strand: New Concepts on
Parallel Programming", Ian Foster et al, P-H 1990.  Strand88, available
commerically from Strand Software, Beaverton, OR.
info: strand88@sstl.co.uk

  2. Query language, implemented on top of INGRES (an RDBMS).  "Modelling
Summary Data", R. Johnson, Proc ACM SIGMOD Conf 1981.

Strawman - HOLWG, DoD, 1975.  The first of the series of DoD requirements
that led to Ada.  (see Woodenman, Tinman, Ironman, Steelman).

STREAM - "STREAM: A Scheme Language for Formally Describing Digital
Circuits", C.D. Kloos in PARLE: Parallel Architectures and Languages
Europe, LNCS 259, Springer 1987.

STRESS - STRuctual Engineering Systems Solver.  Structural analysis
problems in Civil Engineering.  Superceded by STRUDL.  "STRESS: A User's
Manual", S.J. Fenves et al, MIT Press 1964.  Sammet 1969, p.612.

STROBES - Shared Time Repair of Big Electronic Systems.  Computer testing. 
Sammet 1969, p.699.

STRUDL - STRUctured Design Language.  Dynamic and finite-element analysis,
steel and concrete structures.  Subsystem of ICES.  "ICES STRUDL-II
Engineering User's Manual", R68-91, CE Dept MIT (Nov 1968) Sammet 1969,
p.613.

STSC APL - Implementation of APL by Scientific Time-Sharing Corp.

STUDENT - D.G. Bobrow 1964.  Early query system.  Sammet 1969, p.664.

SUGAR - Westfield College, U London.  Simple lazy functional language used
in "Principles of Functional Programming", Hugh Glaser et al, P-H 1984.

SUIF - Stanford University Intemediate Format.  Register-oriented
intermediate language.

SUMMER - Klint & Sint, CWI late 70's.  String manipulation and pattern
matching.  Recently used as the input and implementation language for the
Dataflow Compiler Project at CWI.  "An Overview of the SUMMER Programming
Language", Paul Klint, 7th POPL, ACM 1980, pp.47-55.

SUMMER SESSION - Early system on MIT's Whirlwind.  Listed in CACM 2(5):16
(May 1959).

SUPER - Successor to LOGLISP, based on LNF.  "New Generation Knowledge
Processing: Final Report on the SUPER System", J Alan Robinson et al, CASE
Center TR 8707, Syracuse U, 1987.

SUPERMAC - General-purpose macro language, embeddable in existing languages
as a run-time library.  "SUPERMAC - A Macro Facility That can be Added to
Existing Compilers", P.J. Brown, Soft Prac & Exp 10(6):431-434.

Super Pascal - Pascal variant used in "Data Structures and Algorithms", by
Aho, Hopcroft & Ullman.  Adds nonnumeric labels, return statement,
expressions as names of types.

SuperTalk - Silicon Beach Software.  A superset of HyperTalk used in
SuperCard.

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

SURGE - Sorter, Updater, Report Generator, Etc.  IBM 704, 1959.  Sammet
1969, p.8.

SweetLambda - Sugared lambda-calculus?

Sylvan - [Distributed language?]

SYMBAL - SYMbolic ALgebra.  Max Engeli, late 60's.  Symbolic math language
with ALGOL-like syntax.  Implemented for CDC6600.  "User's Manual for the
Formula Manipulation Language SYMBAL", M. Engeli, TRM-8.00, Comp Ctr UT
Austin, June 1968.

SymbMath - Small symbolic math package for MS-DOS.
ftp: simtel20:calculator/sm14a.zip

SYMBOLANG - Lapidus & Goldstein, 1965.  Symbol manipulating FORTRAN
subroutine package for IBM 7094, later CDC6600.  "Some Experiments in
Algebraic Manipulation", CACM 8:501-508 (1965).

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

Symbolic Mathematical Laboratory - On-line system under CTSS for symbolic
math.  Used display screen and light pen.  Sammet 1969, p.514.

Symmetric LISP - A parallel LISP in which environments are first-class
objects.  Implemented in Common LISP.  "Parallelism, Persistence and Meta-
Cleanliness in the Symmetric Lisp Processor", D. Gelernter et al, SIGPLAN
Notices 22(7):274-282 (July 1987).

SYMPL -  SYsteMs Programming Language.  CDC.  A derivative of Jovial. 
Non-reentrant block structured language with extensive bit manipulation
facilities and linkable with FORTRAN.  Major parts of CDC systems during
the 70's were written in SYMPL.

T - True.  Rees, 1982.  LISP dialect with static scope, a near-superset of
Scheme.  "The T Manual", Johnathan A. Rees <jar@zurich.ai.mit.edu> et al,
Yale U, 1984.  Maintained by David Kranz <kranz@masala.lcs.mit.edu>.
ftp: ftp.ai.mit.edu:pub/systems/t3.1    Unix source

TABLET - Query language.  "Human Factor Comparison of a Procedural and a
Non-procedural Query Language", C. Welty et al, ACM Trans Database Sys
6(4):626-649 (Dec 1981).

TABSOL - T.F. Kavanaugh.  Early system oriented language.  Proc FJCC
18:117-136, AFIPS (Fall 1960).  (See GECOM).

TAC - Translator Assembler-Compiler.  For Philco 2000.

TACPOL - PL/I-like language used by US Army for command and control.

TAL - Tandem Application Language.  A cross between C and Pascal.  Primary
system programming language on Tandem computers.  (Tandem has no assembler
and until recently did not have C or Pascal.)   Derived from SPL[3]?

TALL - TAC List Language.  "TALL - A List Processor for the Philco 2000",
J. Feldman, CACM 5(9):484-485 (Sep 1962).

TAO - Lisp dialect with concurrency, object-orientation and logic. 
"Concurrent Programming in TAO - Practice and Experience", I. Takeuchi in
Parallel Lisp: Languages and Systems, T. Ito et al eds, LNCS 441, Springer
1989, pp.271-299.

TARTAN - A simpler proposed language to meet the Ironman requirements. 
"TARTAN - Language Design for the Ironman Requirement", Mary Shaw et al,
SIGPLAN Notices 13(9):36 (Sep 1978).

TASM - Turbo Assembler.  MS-DOS assembler from Borland.

TASS - Template ASSembly language.  Intermediate language produced by the
Manchester SISAL compiler.

TAWK - Tiny AWK.

Taxis - "A Language Facility for Designing Database-Intensive
Applications", J. Mylopoulos et al, ACM Trans Database Sys 5(2):185-207
(June 1980).

TBIL - Tiny Basic Interpreter Language.  Inner interpreter of Tom Pittman's
set of Tiny Basics in Dr Dobb's J.

Tbl - M.E. Lesk.  Language for laying out tables.

tcl - 

  1. ("tickle")  Tool Command Language.  John Ousterhout, UCB.
<ouster@sprite.berkeley.edu>  A string language for issuing commands to
interactive programs.  Each application can extend tcl with its own set of
commands.    "Tcl: An Embeddable Command Language", J. Ousterhout, Proc
1990 Winter USENIX Conf.
ftp: ucbvax.berkeley.edu

  2. Terminal Control Language.  The command language used in the Pick OS. 
"Exploring the Pick Operating System", J.E. Sisk et al, Hayden 1986.

  3. Tymshare Conversational Language.  "Interactive Languages: Design
Criteria and a Proposal", R.K. Moore et al, Proc FJCC 33(1) (1968).

Tcode - Intermediate language used by the Spineless Tagless G-machine (an
abstract machine based on graph reduction) designed as a target for
compilation of non-strict functional languages.  "The Spineless tagless G-
machine", S. Peyton Jones et al, Fourth Intl Conf Func Prog Langs and Comp
Arch pp.184-201, ACM Sept 1989.

TCOL - CMU.  Tree-based intermediate representation produced by the PQCC
compiler generator.  "An Overview of the Production Quality Compiler-
Compiler Projects", B.W. Leverett et al, IEEE Computer 13(8): 38-49 (Aug
1980).  (see LG).

TCOL.Ada - CMU, 1980.  An intermediate representation for Ada, was merged
with AIDA to form Diana.  "TCOL.Ada: Revised Report on an Intermediate
Representation for the DOD Standard Programming Language", J.M. Newcomer et
al, CMU-CS-79-128 (June 1979).

tcsh - Command language for Unix, a dialect of csh.

Tcsim - Time (Complex) Simulator.  Complex arithmetic version of Tsim. 
ZOLA Technologies, ZOLA@Applelink.Apple.com.

TECO - Text Editor and COrrector.  (Originally "Tape Editor and
COrrector").  Macro language for text editing, screen handling and keyboard
management.  Has a reputation for being cryptic and hard to learn.  (TECO
programs are said to resemble line noise.)  The first EMACS editor was
written in TECO.
ftp: usc.edu, for VAX/VMS, Unix, MS-DOS, Mac, Amiga

TELCOMP - Variant of JOSS.  Sammet 1969, p.217.

TELOS - The EuLisp Object System.  The object-oriented core of EuLisp. 
Incorporates ideas from CLOS, ObjVLisp and OakLisp.  Total merging of types
with classes, and message-passing with normal function application.  (See
EuLisp).

TELSIM - Busch, ca 1966.  Digital simulation.  Sammet 1969, p.627.

TempLog - A clausal subset of first-order temporal logic, with discrete
time.  "Temporal Logic in Programming", M. Abadi et al, INtl Symp Logic
Prog pp.4-16 (1987).

TEMPO - Simple syntax and semantics.  Designed for teaching semantic and
pragmatic aspects of programming languages.  "TEMPO: A Unified Treatment of
Binding Time and Parameter Passing Concepts in Programming Languages", N.D.
Jones et al, LNCS 66, Springer 1978.

Tempura - Language based on temporal logic.  "Executing Temporal Logic
Programs", B. Moszkowski, Camb U Press 1986.

Ten15 - Polymorphic.  "Ten15: An Overview", P. Core et al, Royal Signals
Radar Establishment TR 3977 (Sept 1986).

TERMAC - Interactive matrix language.  "Users Guide to TERMAC", J.S. Miller
et al, MIT Dec 1968.

Terse - Language for decription of hardware logic.  "Hardware Logic
Simulation by Compilation", C. Hansen, 25th ACM/IEEE Design Automation
Conf, 1988.

TeX - Text formatting language developed by Donald Knuth.

TeX-78 - The original version of TeX.

TeX-82 - The version of TeX described in "The TeXbook", Donald Knuth,
A-W 1984.
ftp: june.cs.washington.edu

TFDL - "TFDL : A Task-level Dataflow Language", P.A. Suhler et al, J
Parallel and Distrib Comput 9:103-115 (1990).

TGS-II - Translator Generator System.  Contained TRANDIR.  Sammet 1969,
p.640.

THEO - Frame language.  "Theo: A Framework for Self-Improving Systems",
Mitchell et al, in Architectures for Intelligence, K. VanLehn ed, Erlbaum,
1989.

Theseus - Based on Euclid, never implemented.  "Theseus - A Programming
Language for Relational Databases", J.E. Shopiro, ACM Trans Database Sys
4(4):493-517 (Mar 1979).

ThingLab - Simulation system written in Smalltalk-80.  Solves constraints
using value inference.  "The Programming Language Aspects of ThingLab, A
Constraint-Oriented Simulation Laboratory", A. Borning, ACM TOPLAS
3(4):353-387 (Oct 1981).  Version: ThingLab II.

Tinman - HOLWG, DoD, 1976.  Third of the series of DoD requirements that
led to Ada.  (see Strawman, Woodenman, Ironman, Steelman).

TINT - Interpreted version of JOVIAL.  Sammet 1969, p.528.

Tiny - Concurrency through message-passing to named message queues.

TIP - TI Pascal.

TIPL

  1.  Teach IPL.  Interpretive IPL teaching system.  Sammet 1969, p.393.

  2.  Dialect of IGL.[?]

TK!Solver - Software Arts 1983.  Numerical constraint-oriented language. 
"The TK!Solver Book", M. Konopasek et al, McGraw-Hill 1984.

TL0 - Thread Language Zero.  The instruction set of the TAM (Threaded
Abstract Machine), used to implement Id.  "Fine-grain Parallelism with
Minimal Hardware Support", David Culler et al, SIGPLAN Notices 26(4):164-
175 (ASPLOS-IV Proc) (Apr 1991).

TMDL - Target-Machine Description Language.  Machine-desription language
used in the Graham-Glanville code generator.  "Table-Driven Code
Generation", S.L. Graham, IEEE Computer 13(8):25-34 (Aug 1980).

TMG - Transmogrifier.  Language for an early compiler-compiler.  Macro'd
from the IBM 1604 to the 709 to the 7094 to the GE635, where it was used to
write the EPL compiler for Multics development.  "TMG - A Syntax-Directed
Compiler", R.M. McClure, Proc ACM 20th Natl Conf (1965).  Sammet 1969,
p.636.

TOK - Referred to in Ursula K. LeGuin's "Always Coming Home."  Seems to be
similar to the original BASIC.

Toronto Euclid - The standard dialect of Euclid, as compared to Ottawa
Euclid.

TPL - 
  1. Table Producing Language.  "The Bureau of Labor Statistics Table
Producing Language (TPL)", R.C. Mendelssohn, Proc ACM Annual Conf (1974).

  2. Fleming Nielson.  Concurrent, functional. [?]

TPS - Tree Pruning System.  "An Adaptive Tree Pruning System: A Language
for Programming Heuristic Tree Searches", E.W. Kozdrowicki, Proc ACM 23rd
Natl Conf 1968.

TPU - Text Processing Utility.  DEC.  Language for creation of text-
processing interfaces, used to implement DEC's Extensible VAX Editor (EVE).

TRAC - Text Reckoning And Compiling.  Calvin N. Mooers and Peter Deutsch
<Deutsch@SMLI.Eng.Sun.Com>.  An interactive string handling language. 
"TRAC: A Procedure-Describing Language for the Reactive Typewriter", Calvin
N. Mooers, CACM 9(3):215-219 (Mar 1966).  Sammet 1969, pp.448-454.  (see
MINT)
info: Preston Briggs <preston@rice.edu>

TRANDIR - TRANslation DIRector.  A language for syntax-directed compiling. 
Sammet 1969, p.640.

TRANQUIL - 1966.  ALGOL-like language with sets and other extensions, for
the Illiac IV.  "TRANQUIL: A Language for an Array Processing Computer",
N.E. Abel et al, Proc SJCC 34 (1969). 

TRANS - TRAffic Network Simulation Language.  "A Model for Traffic
Simulation and a Simulation Language for the General Transportation
Problem", Proc FJCC 37 (1970).

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

TRANSCODE - Early system on Ferut computer.  Listed in CACM 2(5):16 (May
1959).

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

TREET - E.C. Haines, 1964.  List processing, akin to LISP.  "The TREET
Time-Sharing System", H.A. Bayard et al, Proc 2nd Symp Symb and Alg Manip,
ACM (Mar 1971).  Sammet 1969, pp.457-461.

TREETRAN - FORTRAN IV subroutine package for tree manipulation.

Trellis - (formerly named Owl).  DEC.  Object-oriented, with static type-
checking and encapsulation.  "Persistent and Shared Objects in
trellis/owl", P. O'Brien et al, Proc 1986 IEEE Workshop on Object-Oriented
Database Systems, IEEE, NY 1986.
info: Jerry Smith <smith@pipe.enet.dec.com>

TRIGMAN - Symbolic math, especially Celestial Mechanics.

Trilogy - Paul Voda.  Logic programming language with numerical
constraint-solving over the natural numbers.  Syntactically a blend of
Prolog, LISP and Pascal.  "The Constraint Language Trilogy: Semantics and
Computations", P. Voda Complete Logic Systems, Vancouver BC, 1988.  Papers
by Voda, and BYTE review.[?]

Troff - Text formatting language/interpreter, a variant of Unix roff.  (see
groff, nroff).

TROLL - Array language for continuous simulation, econometric modeling,
statistical analysis.  "TROLL Reference Manual", D0062, Info Proc Services,
MIT (1973-76).

True BASIC - John Kemeny & Thomas E. Kurtz.  A compiled BASIC requiring no
line numbers.

Tsim - Time Simulator.  Stack-based simulation language.  ZOLA
Technologies, ZOLA@Applelink.Apple.com.

TSL-1 - Task Sequencing Language.  Language for specifying sequences of
tasking events in Ada programs.  "Task Sequencing Language for Specifying
Distributed Ada Systems", D.C. Luckham et al in PARLE: Parallel
Architectures and Langs Europe, LNCS 259, Springer 1987, pp.444-463.

Tui - Functional.  "Tui Language Manual", B. Boutel, TR CSD-8-021, Victoria
U of Wellington, 1988.

Tuki - An intermediate code for functional languages.  "Another
Implementation Technique for Applicative Languages", H. Glaser et al,
ESOP86, LNCS 213, Springer 1986.

Tuple Space Smalltalk - "Using Tuple Space Communication in Distributed
Object-Oriented Languages", S. Matsuoka et al, SIGPLAN Notices 23(11):276-
284 (Nov 1988).

Turbo Pascal - Borland Intl's Pascal.  Perhaps the first integrated
development environment for MS-DOS.
Versions 1.0-3.0: standard Pascal with a few extensions
Versions 4.0 (1987) and 5.0: separate compilation
Version 5.5: object-oriented facilities
Version 6.0: Turbo Vision OOP library

Turbo Prolog - 1986.  A Prolog-like language with strong typing and user-
defined domains.  Programs are arranged in sections: DOMAINS, CLAUSES,
PREDICATES, DATABASE and GOAL.  Currently known as PDC Prolog, and
distributed by Prolog Development Center, Atlanta (404)873-1366
<pdc@mcimail.com>?

Turing - R.C. Holt & J.R. Cordy <cordy@qucis.queensu.ca>, U Toronto, 1982. 
Descendant of Concurrent Euclid, an airtight super-Pascal.  "Turing
Language Report", R.C. Holt & J.R. Cordy, Report CSRI-153, CSRI, U Toronto,
Dec 1983.  "The Turing Programming Language", R.C. Holt & J.R. Cordy, CACM
31(12) (Dec 1988).  Available from Holt Software Assocs, Toronto.  Versions
for Sun, VAX, MS-DOS, Mac, VM/CMS.
info: <distrib@turing.toronto.edu>

Turing Plus - Systems programming language, a concurrent descendant of
Turing.  "The Turing Plus Report", R.C. Holt & J.R. Cordy, CSRI, U Toronto,
Feb 1987.  Available from Holt Software Assocs, Toronto
<distrib@hsa.on.ca>.

Turtle - The subset of LOGO dealing directly with turtle graphics.

TUTOR - Scripting language on PLATO systems from CDC.  "The TUTOR
Language", Bruce Sherwood, Control Data, 1977.

Twentel - Functional.  "The TWENTEL System (Version 1).", H. Kroeze, CS
Dept TR, U Twente, 1986.

TWIG - Tree-Walking Instruction Generator.  A code-generator language. 
"Twig Language Manual", S.W.K. Tijang, CS TR 120, Bell Labs, 1986.  A
version of TWIG in ML by Jussi Rintanen <jur@cs.hut.fi> comes with SML/NJ.

TXL - Tree Transformation Language.  J.R. Cordy et al, Queens U, Canada,
1988.  A general language for implementing source-to-source translation and
program transformation tasks.  "TXL: A Rapid Prototyping System for
Programming Language Dialects", J.R. Cordy et al, Comp Langs 16(1) (Jan
1991).  Specification and Automatic Prototype Implementation of Polymorphic
Objects in Turing Using the TXL Dialect Processor", J.R. Cordy & E.M.
Promislow, Proc IEEE Intl Conf on Comp Lang ICCL'90 (Mar 1990).
ftp: qusuna.qucis.queensu.ca, Vers 5.3, source in ANSI C

Typed Smalltalk - Ralph Johnson, U Illinois <johnson@speedy.cs.uiuc.edu>.

TYPOL - A specialized logic programming language.  "TYPOL: A Formalism to
Implement Natural Semantics", T. Despeyroux, RR 94, INRIA, 1988.

UAN - User Action Notation.  VPI.  A notation for representation of
graphical user interfaces, e.g. mice and icons, H. Hartson et al, ACM Trans
on Info Sys, July 1990.

UBASIC - Symbolic math, number theory.  W.D. Neumann, Notices of AMS (Mar
1991).
ftp: wsmr-simtel20.army.mil
     shape.mps.ohio-state.edu:pub/msdos/ubasic

UCSD Pascal - see Pascal-P.

U-Code - Universal Pascal Code.  Intermediate language, a generalization of
P-code for easier optimization.  Developed originally for the Los Alamos
Cray-1 and the Lawrence Livermore S-1.  A refined version currently used by
MIPS compilers is descended from one at Stanford U.  "Machine Independent
Pascal Code Optimization", D.R. Perkins et al, SIGPLAN Notices 14(8): 201-
201 (1979).  "A Transporter's Guide to the Stanford U-Code Compiler
System", P. Nye et al, TR CSL Stanford U, June 1983.  (see HPcode).

UHELP - Linear programming.  "UHELP User's Manual", D. Singh, Indus Eng
Dept, U Houston (Oct 1969).

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

UHELP - Mathematical language, listed [?] 1976.

ULP - Small structured language for use in microprocessors.  "User's Guide
to the ULP Language for the PDP-11", CS TR 536, U Maryland (May 1977).

uML - Micro ML.  An interpreter for a subset of SML that runs on MS-DOS.
ftp: ftp.cs.umu.se:/pub/umlexe01.zoo

UNCOL -  UNiversal Computer Oriented Language.  A universal intermediate
language, discussed but never implemented.  "A First Version of UNCOL",
T.B. Steel, Proc JCC 19:371-378 (Winter 1961).  Sammet 1969, p.708.

UNICODE - Pre-FORTRAN on the IBM 1103, similar to MATH-MATIC.  Sammet 1969,
p.137.

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

UNITY - A high-level parallel language.  "Parallel Program Design", K.M.
Chandry et al, A-W 1988.

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

USL - Query language, close to natural English.

utility-coder - Data manipulation and report generation.  "User's Manual
for utility-coder", Cambridge Computer Assoc (Jul 1977).

V - Wide-spectrum language used in the knowledge-based environment CHI. 
"Research on Knowledge-Based Software Environments at Kestrel Inst", D.R.
Smith et al, IEEE Trans Soft Eng SE-11(11):1278-1295 (1985).

VAL -

  1. Value-oriented Algorithmic Language.  J.B. Dennis, MIT 1979.  Single
assignment language, designed for MIT dataflow machine.  Based on CLU, has
iteration and error handling, lacking in recursion and I/O.  "A Value-
Oriented Algorithmic Language", W.B. Ackermann et al, MIT LCS TR-218, June
1979.  "The VAL Language: Description and Analysis", J.R. McGraw, TOPLAS
4(1):44-82 (Jan 1982).

  2. Variable Assembly Language.  Unimation.  Language for industrial
robots.  Version: VAL II - "VAL II: A New Robot Control System for
Automatic Manufacturing", B.E. Shimano et al, Proc IEEE Intl Conf on
Robotics 1984, pp.278-292.

  3. VHDL Annotation Language.  Stanford.
ftp: wilbur.stanford.edu:pub/valbin-sun3-4.0-0.1.3.tar.Z
source in Ada available from Larry M. Augustin <lma@sierra.stanford.edu>

Valid - Dataflow language.  "A List-Processing-Oriented Data Flow Machine
architecture", Makoto Amamiya et al, AFIPS NCC, June 1982, pp.143-151.

VDM - Specification method based on predicate logic, an outgrowth of VDL. 
"The Vienna Development Method: The Meta-Language", D. Bjorner et al eds,
LNCS 61, Springer 1978.  Version: BSI/VDM.  Jones's books, 1980, 1986.[?]

Vector C - CMU?  Variant of C similar to ACTUS.

VECTRAN - FORTRAN with array extensions.  "The VECTRAN Language: An
Experimental Language for Vector/Matrix Array Processing, Report G320-
3334, IBM (Aug 1975).

Verdi - (named for the Italian composer Giuseppe Verdi (1813-1901)) 
Provable systems language.  Descendant of Ottawa Euclid.

VEL - See LISP70.

Verilog - Cadence Design Systems.  A hardware description language.  "The
Verilog Hardware Description Language", Donald E. Thomas & Philip Moorby,
Kluwer 1991.
info: kmd@cadence.com

VGQF - Query language.

VHDL - VHSIC Hardware Description Language.  (VHSIC = Very High Speed
Integrated Circuit)  The DoD standard for hardware description.  "VHSIC
Hardware Description Language", M.R. Shahdad et al, IEEE Computer 18(2):94-
103 (Feb 1985).

Vienna Definition Language - IBM Vienna Labs.  A language for formal
definition via operational semantics.  Used to specify the semantics of
PL/I.  "The Vienna Definition Language", P. Wegner, ACM Comp Surveys
4(1):5-63 (Mar 1972).

Vienna Fortran - Hans Zima, U Vienna.  Data-parallel.

Viron - "Five Paradigm Shifts in Programming Language Design and Their
Realization in Viron, a Dataflow Programming Environment", V. Pratt, 10th
POPL, ACM 1983, pp.1-9.

VITAL - Semantics language using FSL.  Mondshein, 1967.  Sammet 1969,
p.641.

VIVID - Numerical constraint-oriented language.  "VIVID: The Kernel of a
Knowledge Representation Environment Based on the Constraints Paradigm of
Compuation", J. Maleki, Proc 20th Annual Hawaii Intl Conf on System
Sciences (Jan 1987) pp.591-597.

viz - Visual language for specification and programming.  "viz: A Visual
Language Based on Functions", C.M. Holt, 1990 IEEE Workshop on Visual
Langs, Oct 1990, pp.221-226.

Vlisp - Patrick Greussay <pg@litp.ibp.fr> ca 1973.  Lisp dialect widely
used in France.  (See ObjVlisp).

VPL - Dataflow language for interactive image processing.  "VPL: An Active,
Declarative Visual Programming System, D. Lau-Kee et al, 1991 IEEE Workshop
on Vis Langs, Oct 1991, pp.40-46.

VULCAN -

  1. Wayne Ratliff ca. 1980.  CP/M port of JPLDIS which evolved into dBASE
II.

  2. The dBASE-like interpreter and compiler sold by RSPI with their
Emerald Bay product. [same as 1?]

  3. Early string manipulation language.  "VULCAN - A String Handling
Language with Dynamic Storage Control", E.P. Storm et al, Proc FJCC 37,
AFIPS (Fall 1970).

  4. Kahn et al, Xerox PARC.  Concurrent object orientation and logic
programming.  An object-oriented preprocessor for FCP.  "Vulcan: Logical
Concurrent Objects", K. Kahn et al in Research Directions in Object-
Oriented Programming, A.B. Shriver et al eds, MIT Press 1987.

WAFL - WArwick Functional Language.  Warwick U, England.  LISP-like.

WAM - Intermediate language for compiled Prolog, used by the Warren
Abstract Machine.  "An Abstract Prolog Instruction Set", D.H.D. Warren, TR
309, SRI 1983.

WATBOL - WATerloo COBOL, for MVS.

WATFIV - WATerloo Fortran IV.  U Waterloo, Canada.  Student-friendly
variant of FORTRAN IV.

WATFOR - WATerloo FORtran.  U Waterloo, Canada.  Student-friendly variant
of FORTRAN.  "WATFOR - The University of Waterloo FORTRAN IV Compiler",
P.W. Shantz et al, CACM 10(1):41-44 (Jan 1967).

WAVE - Robotics language.  "WAVE: A Model-Based Language for Manipulator
Control", R.P. Paul, Ind Robot 4(1):10-17 (1979).

WEB - Knuth's self-documenting brand of programming, with algorithms and
documentation intermixed in one file.  They can be separated using Weave
and Tangle.  Versions exist for Pascal, C etc.  Spiderweb can be used to
create versions for other languages (ftp princeton.edu).  "Literate
Programming", D.E. Knuth, Computer J 27(2):97-111 (May 1984).  

WFL - Work Flow Language.  Burroughs' answer to IBM JCL.  Yet another ALGOL
variant.

Wisp - "An Experiment with a Self-Compiling Compiler for a Simple List-
Processing Language", M.V. Wilkes, Ann Rev Automatic Programming 4:1-48
(1964).

Woodenman - HOLWG, DoD, 1975.  Second of the series of DoD requirements
that led to Ada.  (see Strawman, Tinman, Ironman, Steelman).

WOOL - Colas Nahaboo <colas@sophia.inria.fr>  Small Common Lisp-like
extension language.  Claims to be the fastest interpreted language in C
with run-time types.  Version 1 used by the GWM window manager.  Version 2
has an object system.

WRITEACOURSE - CAI language, for IBM 360.  "WRITEACOURSE: An Educational
Programming Language", E. Hunt et al, Proc FJCC 33(2) (1968).

WSFN - Which Stands For Nothing.  Atari 1983.  Beginner's language with
emphasis on graphics, for Atari home computers.  Version: Advanced WSFN.

WSL - Waterloo Systems Language.  A C-like systems programming language. 
"Waterloo Systems Language:  Tutorial and Language Reference", F.D.
Boswell, WATFAC Publications Ltd, Waterloo, Canada.  ISBN 0-919884-00-8.

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

Xbase - Generic term for the dBASE family of languages.  Coined in response
to threatened litigation over use of the copyrighted trademark "dBASE."

XC - Declarative extension of C++.  "XC - A Langauge for Embedded Rule
Based Systems", E. Nuutila et al, SIGPLAN Notices 22(9):23-32 (Sep 1987).

XDL - An object-oriented extension to CCITT's SDL[2].  "XDL: An Object-
Oriented Extension to SDL", S.J. Ochuodho et al in 

XLISP - eXperimental LISP.  David Betz.  LISP variant with object-oriented
extensions, source in C.  Versions exist for most PC's.  BYTE article.
ftp: wsmr-simtel20.army.mil:pd1/msdos/xlisp/xlisp21

XPC - eXplicitly Parallel C.  Dialect of Parallel C which is mode
independent, i.e. efficiently compilable to both SIMD and MIMD
architectures.  "Toward Semantic Self-Consistency in Explicitly Parallel
Languages," M.J. Phillip & H.G. Dietz, Proc 4th Intl Conf on
Supercomputing, Santa Clara, CA, May 1989, v.1, pp.398-407.  Research
implementations only.

XPL - Stanford, 1967-69.  Dialect of PL/I used for compiler writing.  "A
Compiler Generator," W.M. McKeeman et al, P-H 1970.  Also JCC, AFIPS 1968.

XPOP - Extensible macro assembly language with user-redefinable grammar,
for use with FAP.  "XPOP: A Meta-language Without Metaphysics", M.I.
Halpern, Proc FJCC 25:57-68, AFIPS (Fall 1964).

XScheme - David Betz.  Scheme with object-oriented extensions.  Source in
C.  Versions for PC, Macintosh, Atari, Amiga.
ftp: labrea.stanford.edu
     comp.sources.amiga/volume90, version 0.28 for Amiga

XTRAN - FORTRAN-like, interactive.

Y - Structured general purpose language for simple systems applications,
syntactically falls between RATFOR and C.  "The Y Programming Language",
D.R. Hanson, SIGPLAN Notices 16(2):59-68 (Feb 1981).

y++ - "YACC Meets C++", S.C. Johnson, Proc EUUG Spring '88 Conf.

Yaa - Yet Another Assembler - Macro assembler for GCOS 8 and Mark III on
Bull DPS-8 machines.  Available from Bull as part of U Waterloo Tools
package (maintained by <pjf@thinkage.on.ca>).

Yacc - Yet Another Compiler Compiler.  Language used by the Yacc LALR
parser generator.  "YACC - Yet Another Compiler Compiler", S.C. Johnson, CS
TR 32, Bell Labs (Jul 1975). 
Implementations:
 Bison - from GNU
  ftp: prep.ai.mit.edu:pub/gnu/bison-1.14.tar.Z
 Bison++ - produces C++ output.
  ftp: psuvax1.cs.psu.edu:pub/src/gnu/bison++-1.04.tar.Z
 Yacc++ - An object-oriented rewrite of yacc and lex, produces an LR(1)    
  parser.  Chris Clark <compres!chris@crackers.clearpoint.com> Compiler    
  Resources Inc, (508) 435-4847.

YAPS - Yet Another Production System?  Similar to CLIPS?

Yay - Yet Another Yacc - An extension of Yacc with LALR(2) parsing. 
Available from Bull as part of U Waterloo Tools package (maintained by
<pjf@thinkage.on.ca>).

YELLOW - A language proposed by SRI to meet the Ironman requirements which
led to Ada. "On the YELLOW Language Submitted to the DoD", E.W. Dijkstra,
SIGPLAN Notices 13(10):22-26 (Oct 1978).

Yerk - (named for Yerkes Observatory)  A public domain reincarnation of
Neon.
ftp: oddjob.uchicago.edu:pub/Yerk
info: Bob Lowenstein <rfl@oddjob.uchicago.edu>

Z -

  1. Programming Research Group, Oxford U, ca 1980.  A specification
language based on axiomatic set theory and first order logic.  Must be
written in LaTeX?  "Understanding Z", J.M. Spivey, Cambridge U Press 1988.

  2. A stack-based, complex arithmetic simulation language.  ZOLA
Technologies, ZOLA@Applelink.Apple.com.

Z++ - Object-oriented extension of Z.  "Z++, an Object-Oriented Extension
to Z", Lano, Z User Workshop, Oxford 1990, Springer Workshops in Computing,
1991, pp.151-172.

ZAP - Language for expressing transformational developments.  "A System for
Assisting Program Transformation", M.S. Feather, ACM TOPLAS 4(1):1-20 (Jan
1982).

Zed - 1978.  Software Portability Group, U Waterloo.  Eh, with types added. 
Similar to C.  Implementation language for the Thoth realtime operating
system.  Added a few simple types for greater efficiency on byte-addressed
machines.  String constants in case statements.  Enforces the naming
convention: MANIFESTS, Externals and locals.  "Porting the Zed Compiler",
G.B. Bonkowski et al, SIGPLAN Notices 14(8):92-97 (Aug 1979).

ZENO - Euclid with asynchronous message-passing.  "Preliminary ZENO
Language Description", J.E. Ball et al, SIGPLAN Notices 14(9):17-34 (Sep
1979).

ZetaLisp - MACLISP dialect used on the LISP Machine.  The many extensions
to MACLISP include vectors, closures, flavors, stack groups, locatives and
invisible pointers.  "LISP Machine Manual", D. Weinreb and D. Moon, MIT AI
Lab, 1981.

ZIL - Zork Interpretive Language.  An adventure language used by Infocom.

zsh - Sh with list processing and database enhancements.
ftp: cs.ucsd.edu:/pub/zsh/zsh2.1.0.tar.Z

ZOPL - Geac.  A low-level Pascal.

ZUG - Geac.  A low-level Awk?

Zuse - (named for Konrad Zuse, the designer of the first modern programming
language Plankalkul.)  Christian Collberg <collberg@dna.lth.se>, PhD thesis
1991.  A descendant of Ada, Modula-2, Mesa and Oberon-1 supporting several
levels of information hiding.  The Zuse type system includes fully hidden
types (similar to Modula-2 opaque types but wihout any implementation
restriction), semi-open pointer types (same as Modula-2 opaque types),
extensible record types (similar to Oberon-1 public projection types but
without the compiler hint), enumeration types, extensible enumeration
types, and extensible subrange types.  A type can also be protected by
specifying the operations that particular modules may perform (similar to
C++ friend classes and Ada private types).  Zuse also includes hidden and
extensible constants and hidden inline procedures.  In order to support the
higher levels of information hiding the implementation employs partial
intermediate code linking.  Version for Sun-3.



APPENDIX A


Selected Works on Computer Language History and Design
======================================================

AFIPS (American Federation of Information Processing Societies), SJCC
(Spring Joint Computer Conference) and FJCC (Fall Joint Computer
Conference), replaced after 1972 by the NCC (National Computer Conference). 
TK7885 .A1 J6

Andrews, G.R. and F.B. Schneider, "Concepts and Notations for Concurrent
Programming", ACM Comp Surveys 15(1):1-43 (Mar 1983).

Bal, H.E., "Programming Languages for Distributed Systems", ACM Comp
Surveys 21(3):261-322 (Sep 1989).

Blume, Christian, "Programming Languages for Industrial Robots", Springer
1986.

Bobrow, D.G. & Raphael, "New Programming Languages for Artificial
Intelligence Research", ACM Comp Surveys 6:155 (Nov 1974).

Computer Languages  QA 76.7 .C647  ISSN 0096-0551

Conference Record of the 19XX ACM Symposium on Lisp and Functional
Programming, QA 76.73 .L23 A26

Horowitz, Ellis, "Programming Languages, A Grand Tour", 3rd ed, Springer
1987.  QA76.7 .P78

Hudak, Paul, "Conception, Evolution and Application of Functional
Programming Languages", ACM Comp Surveys 21(3):359-411 (Sep 1989).

IEEE Transactions on Software Engineering, QA76 .I33x

POPL - Conference Record of the [Nth] Annual ACM Symposium on Principles of
Programming Languages.  QA 76.7 .A25a

Sammet, Jean E., <sammet@vtvm1.cc.vt.edu> "Programming Languages:  History
and Fundamentals",  P-H 1969.  QA76.5 .S213.  The definitive work on early
computer language development.

Sammet, Jean E., "Programming Languages: History and Future", CACM
15(7):601-610 (Jul 1972).

Sammet, Jean E., "Roster of Programming Languages 1970", Computers &
Automation 19(6B):6-11 (Nov 30, 1970).

Sammet, Jean E., "Roster of Programming Languages 1971", Computers &
Automation 20(6B):6-13 (June 30, 1971).
 
Sammet, Jean E., "Roster of Programming Languages for 1976-77", SIGPLAN
Notices 13(11):56 (Nov 1978).

Shapiro, E., "The Family of Concurrent Logic Programming Languages", ACM
Comp Surveys, 21(3):413-510 (Sep 1989).

ACM SIGPLAN Notices, QA76.7 .A13

Software: Practice and Experience, QA 76.5 .S653

ACM TOPLAS (Transactions on Programming Languages and Systems) QA76.7 .A16

Wexelblat, R.L. ed, "Proceedings: ACM SIGPLAN History of Programming
Languages Conference"  (Los Angeles, July 1978).  758 pp.  Academic Press
1981.  An entertaining account of the history of roughly 15 major
programming languages.  Jean Sammet co-organized the conference.  ACM No
548780.  ACM Order Dept: (800)342-6626.  QA76.7 .H56



APPENDIX B

A Chronology of Influential Computer Languages
==============================================

Konrad Zuse in Nazi Germany may have developed the first real computer
programming language, "Plankalkul" ca. 1945.  This is mentioned in the 1978
ACM History of Programming Languages FORTRAN session.

According to Sammet, over 200 programming languages were developed between
1952 and 1972, but she considered only about 13 of them to be significant.

1957    FORTRAN
1958    ALGOL
1960    LISP
1960    COBOL
1962    APL
1962    SIMULA
1964    BASIC
1964    PL/I
1966    ISWIM
1970    Prolog
1972    C
1975    Pascal
1975    Scheme
1978    CSP
1978    FP
1979    Modula-2
1980    dBASE II
1983    Smalltalk-80
1983    Ada
1983    Parlog
1984    Standard ML
1986    C++
1986    CLP(R)
1986    Eiffel
1988    Mathematica
1988    CLOS
1990    Haskell
Newsgroups: comp.lang.misc