From: billk@HAWK.CS.UKANS.EDU (Bill Kinnersley)
Newsgroups: comp.lang.misc
Subject: The Language List V1.7 - Part 2 of 8
Date: 6 Apr 92 14:16:24 GMT
Article-I.D.: hawk.9204060916.aa07652


Avalon/Common LISP - Prototype only.  "Reliable Distributed Computing with
Avalon/Common LISP", S.M. Clamen et al, CMU-CS-89-186 and Proc Intl Conf on
Computer Languages, Mar 1990.

AXLE - An early string processing language.  Program consists of an
assertion table which specifies patterns, and an imperative table which
specifies replacements.  "AXLE: An Axiomatic Language for String
Transformations", K. Cohen et al, CACM 8(11):657-661 (Nov 1965).

AWK - Aho Weinberger Kernighan.  1978.  Text processing/macro language. 
"The AWK Programming Language" A. Aho, B. Kernighan, P. Weinberger, A-W
1988.  (see Bawk, Gawk, Mawk, Nawk, Tawk.)

B - 

  1. Thompson, 1970.  A systems language written for Unix on the PDP-11. 
Derived from BCPL, and very similar to it except for syntax.  B was the
predecessor of C.  "The Programming Language B", S.C. Johnson & B.W.
Kernighan, CS TR 8, Bell Labs (Jan 1973).

  2. L. Meertens & S. Pemberton.  Simple interactive programming language,
the predecessor of ABC[1].  "Draft Proposal for the B Language", Lambert
Meertens, CWI, Amsterdam, 1981.
ftp: minnehaha.rhrk.uni-kl.de:pub/languages/B.tar.Z

B-0 - Original name of FLOW-MATIC, Remington Rand.  UNIVAC I or II ca.
1958.

BABEL - 

  1. Mentioned in "The Psychology of Computer Programming," Weinberg, 1971
ed, p.241.

  2. Higher-order functional plus first-order logic language.  "Graph-Based
Implementation of a Functional Logic Language", H. Kuchen et al, Proc ESOP
90, LNCS 432, Springer 1990, pp.271-290.

BACAIC - Boeing Airplane Company Algebraic Interpreter Coding system. 
Pre-FORTRAN system on the IBM 701, IBM 650.

BAL - Basic Assembly Language.  What most people called IBM 360 assembly
language.  (see ALC).

BALGOL - ALGOL on Burroughs 220.  Sammet 1969, p.174.

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

BALM - Block and List Manipulation.  Harrison, 1970.  Extensible language
with LISP-like features and ALGOL-like syntax, for CDC 6600.  "The Balm
Programming Language", Malcolm Harrison, Courant Inst (May 1973).

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

Baroque - Boyer & Moore, 1972.  Early logic programming language. 
"Computational Logic: Structure Sharing and Proof of program Properties",
J. Moore, DCL Memo 67, U Edinburgh 1974.

bash - Bourne Again SHell.  GNU's command shell for Unix.
ftp: prep.ai.mit.edu:pub/gnu/bash-1.10.tar.Z

BASIC - Beginner's All-purpose Symbolic Instruction Code.  John G. Kemeny &
Thomas E. Kurtz, Dartmouth College, designed 1963, first ran on an IBM 704
on May 1, 1964.  Quick and easy programming by students and beginners. 
BASIC exists in many dialects, and is popular on microcomputers with sound
and graphics support.  Most micro versions are interactive and interpreted,
but the original Dartmouth BASIC was compiled.  ANSI Minimal BASIC, ANS
X3.60-1978.
list: basic@ireq.hydro.qc.ca

BASIC AUTOCODER - Early system on IBM 7070.  Listed in CACM 2(5):16 (May
1959).

Basic COBOL - Subset of COBOL from COBOL-60 standards.  Sammet 1969, p.339.

Basic FORTRAN - Subset of FORTRAN.  Sammet 1969, p.150.

Basic JOVIAL - Subset of JOVIAL, ca. 1965.  Sammet 1969, p.529.

bawk - Bob Brodt.  AWK-like pattern-matching language, distributed with
Minix.

BC NELIAC - Version of NELIAC, post 1962.  Sammet 1969, p.197.

BCL - Successor to Atlas Commercial Language.  "The Provisional BCL
Manual", D. Hendry, U London 1966.

BCPL - Basic CPL.  M. Richards 1969.  British systems language, a
descendant of CPL and the inspiration for B and C.  BCPL is low-level,
block-structured and typeless, and provides only one-dimensional arrays.
    A variety of flow control: if-then, test-then-else, unless-do,
while-do, until-do, repeat, repeatwhile, repeatuntil, for-to-by-do, loop,
break and switchon-into.  BCPL has conditional expressions, pointers, and
manifest constants.  Parameters are call-by-value.
    Program segments communicate via the global vector where system and
user variables are stored in fixed numerical locations in a single array. 
BCPL was used to implement the TRIPOS OS.  "BCPL - The Language and its
Compiler", Martin Richards & Colin Whitby-Stevens, Cambridge U Press 1979.

BDL - Block Diagram Compiler.  A block-diagram simulation tool, with
associated language.  "A Software Environment for Digital Signal-Processing
Simulations," D.H. Johnson & R.E. Vaughan, Circuits Systems and Signal
Processing 6(1):31-43, (1987).

BELL - Early system on IBM 650 and Datatron 200 series. [Is Datatron
version the same?]  Listed in CACM 2(5):16 (May 1959).  Versions: BELL L2,
BELL L3.

Bertrand - (named for the British mathematician Bertrand Russell (1872-
1970)).  W. Leler.  Rule-based specification language based on augmented
term rewriting.  Used to implement constraint languages.  The user must
explicitly specify the tree-search and the constraint propagation. 
"Constraint Programming Languages - Their Specification and Generation", W.
Leler, A-W 1988, ISBN 0-201-06243-7.

BETA - Kristensen, Madsen<olmadsen@daimi.aau.dk>, Moller-Pedersen &
Nygaard, 1983.  Object-oriented language with block structure, coroutines,
concurrency, strong typing, part objects, separate objects and classless
objects.  Central feature is patterns, a generalization of classes,
providing instantiation and hierarchical inheritance for all objects
including procedures and processes.  "The BETA Programming Language", B.B.
Kristensen et al, in Research Directions in Object-Oriented Programming,
B.D. Shriver et al eds, MIT Press, 1987.  Mjolner Informatics ApS,
implementations for Mac, Sun, HP, Apollo.
list: usergroup@mjolner.dk

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

Bjorn - Constraint language?

BLAZE - Single assignment language for parallel processing.  "The BLAZE
Language: A Parallel Language for Scientific Programming", P. Mehrotra et
al, J Parallel Comp 5(3):339-361 (Nov 1987).

BLAZE 2 - Object-oriented successor to BLAZE.  "Concurrent Object Access in
BLAZE 2", P. Mehrotra et al, SIGPLAN Notices 24(4):40-42 (Apr 1989).

B-LINE - Early CAD language.  "B-LINE, Bell Line Drawing Language", A.J.
Frank, Proc Fall JCC 33 1968.

BLISS - Basic Language for Implementation of System Software.  W.A. Wulf,
CMU  ca. 1969.  An expression language, block-structured, and typeless,
with exception handling facilities, coroutines, a macro system, and a
highly optimizing compiler.  One of the first non-assembly languages for OS
implementation.  Gained fame for its lack of a goto.  "BLISS: A Language
for Systems Programming", W.A. Wulf et al, CACM 14(12):780-790 (Dec 1971). 
Versions: BLISS-10 for the PDP-10.  BLISS-11 for PDP-11 to support the
C.mmp/Hydra project, BLISS-32 for VAX/VMS.

Blosim - Block-Diagram Simulator.  A block-diagram simulator. "A Tool for
Structured Functional Simulation", D.G. Messerschmitt, IEEE J on Selected
Areas in Comm, SAC-2(1):137-147, 1984.

BLOX - A visual language.

BLUE - Softech.  A language proposed to meet the DoD Ironman requirements
which led to Ada.  "On the BLUE Language Submitted to the DoD", E.W.
Dijkstra, SIGPLAN Notices 13(10):10-15 (Oct 1978).

BMASF - Basic Module Algebra Specification Language?  "Design of a
Specification Language by Abstract Syntax Engineering", J.C.M. Baeten et
al, in LNCS 490, pp.363-394.

BMDP - BioMeDical Package.  UCB, 1961.  Statistical language, first
implemented in FORTRAN for the IBM 7090.

BNF - Backus Normal Form, later renamed Backus-Naur Form at the suggestion
of Donald Knuth.  A formalism to express the productions of context-free
grammars.

BNR Pascal - "Remote Rendezvous", N. Gammage et al, Soft Prac & Exp
17(10):741-755 (Oct 1987.

Bob - David Betz.  A tiny object-oriented language.  Dr Dobbs J, Sep 1991,
p.26.
ftp: mv.mv.com:pub/ddj/bob15.arc

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

Booster - Data parallel language.  "The Booster Language", E. Paalvast, TR
PL 89-ITI-B-18, Inst voor Toegepaste Informatica TNO, Delft, 1989.

BOSS - Bridgport Operating System Software.  Derivative of the ISO 1054
numerical machine control language for milling, etc.

Boxer - Visual language?

BRAVE - ?

BRIDGE - Component of ICES for civil engineers.  Sammet 1969, p.616.

Bridgetalk - A visual language.

Brilliant - 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. Diamond, Nonpareil, Pearl[3], Ruby[2]).

BRUIN - Brown University Interactive Language.  Simple interactive language
with PL/I-like syntax, for IBM 360.  "Meeting the Computational
Requirements of the University, Brown University Interactive Language",
R.G. Munck, Proc 24th ACM Conf, 1969.

BSL - Variant of IBM's PL/S systems language.  Versions: BSL1, BSL2.

BUGSYS - Pattern recognition and preparing animated movies, for IBM 7094
and IBM 360. "BUGSYS: A Programming System for Picture Processing - Not for
Debugging", R.A. Ledley et al, CACM 9(2) (Feb 1966).

Burge's Language - Unnamed functional language based on lambda-calculus. 
Recursive Programming techniques", W.H. Burge, A-W 1975.

Butterfly Common LISP - Parallel version of Common LISP for the BBN
Butterfly machine.

Butterfly Scheme - Parallel version of Scheme for the BBN Butterfly.

C - Dennis Ritchie, Bell Labs, ca. 1972.  Originally a systems language for
Unix on the PDP-11, briefly named NB.  Influenced by BCPL through
Thompson's B.  Terse, low-level and permissive.  Preprocessor.  C has
rapidly become the language most widely used for software implementation. 
"The C Programming Language", Brian Kernighan & Dennis Ritchie, P-H 1978.

C* - Thinking Machines, 1987.  Superset of ANSI C, data-parallel with
synchronous semantics, for the Connection Machine.  "C*: An Extended C
Language for Data Parallel Processing", J. Rose et al, TR PL 87-5, Thinking
Machines Corp, 1987.
info: customer-support@think.com
      documentation-order@think.com

C++ - Stroustrup <bs@alice.att.com>.  An object-oriented superset of C.  In
C++ a class is a user-defined type, syntactically a struct with member
functions.  Constructors and destructors are member functions called to
create or destroy instances.  A friend is a nonmember function that is
allowed to access the private portion of a class.  C++ allows implicit type
conversion, function inlining, overloading of operators and function names,
and default function arguments.  It has streams for I/O and references. 
"The C++ Programming Language", Bjarne Stroustrup, A-W, 1986.  (see G++).
ftp: grape.ecs.clarkson.edu:/pub/msdos/djgpp/djgpp.zip for MS-DOS

C++ 2.0 - May 1989.  Multiple inheritance, type-safe linkage, pointers to
members, abstract classes.  "C++ 2.0 Draft Reference Manual"

C++ 2.1 - "Annotated C++ Reference Manual", B. Stroustrup et al, A-W 1990.

C++Linda - "The AUC C++Linda System", C. Callsen et al, U Aalborg, in
Linda-Like Systems and Their Implementation, G. Wilson ed, U Edinburgh TR
91-13, 1991.

C-10 - Improved version of COLINGO.  Sammet 1969, p.702.

CADET - Computer Aided Design Experimental Translator.  Sammet 1969, p.683.

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

CAJOLE - Dataflow language.  "The Data Flow Programming Language CAJOLE: An
Informal INtroduction", C.L. Hankin et al, SIGPLAN Notices 16(7):35-44 (Jul
1981).

CAL - Course Author Language.  CAI language for IBM 360.  "Design of a
Programming Language for Computer Assisted Learning", F.M. Tonge, Proc IFIP
Congress 1968, v2.

Caliban - Kelly, Imperial College.  Declarative annotation language,
controlling the partitioning and placement of the evaluation of expressions
in a distributed functional language.  "Functional Programming for Loosely-
coupled Multiprocessors", P. Kelly <phjk@doc.ic.ac.uk>, Pitman/MIT Press,
1989.

Calico - Bell Labs.  Object-oriented language.  IEEE Software, May 1991.

CAMAL - CAMbridge ALgebra system.  Symbolic math used in Celestial
Mechanics and General Relativity.  Implemented in BCPL on Titan.  "CAMAL
User's Manual", John P. Fitch, Cambridge U, England (1975).  "The Design of
the Cambridge Algebra System", S.R. Bourne et al, Proc 2nd Symp of Symb &
Alg Manip, SIGSAM 1971.

Camelot Library - "The Camelot Library", J. Bloch, in Guide to the Camelot
Distributed Transaction Facility: Release I, A.Z. Spector et al eds, CMU
1988, pp.29-62.

CAMIL - Computer Assisted/Managed Instructional Language.  Used for CAI at
Lowry AFB, CO.  "The CAMIL Programming Language", David Pflasterer, SIGPLAN
Notices 13(11):43 (Nov 1978).

CAML - 

  1. Categorical Abstract Machine Language.  G. Huet and G. Cousineau.  A
version of ML intermediate between LCF ML and SML.  Lazy data structures. 
Built on the Categorical Abstract Machine.  "The CAML Reference Manual", P.
Weis et al, TR INRIA-ENS, 1989.
ftp: nuri.inria.fr:lang/caml, Version 3.1
info: caml-light@margaux.inria.fr

  2. Language for preparation of animated movies, listed [?] 1976.

CAML Light - Xavier Leroy.  CAML subset.  A small portable implementation,
uses a bytecode interpreter written in C.  Runs on Unix, MS-DOS, Macs and
Amiga.  Version: 0.4
ftp: nuri.inria.fr
info: caml-light@margaux.inria.fr

Cantor - Object-oriented language with fine-grained concurrency.  Athas,
Caltech 1987.  "Multicomputers: Message Passing Concurrent Computers", W.
Athas et al, Computer 21(8):9-24 (Aug 1988)..

CASE SOAP III - Version of SOAP assembly language for IBM 650.  Listed in
CACM 2(5):16 (May 1959).

CAT - Common Abstract Tree Language.  R. Voeller & Uwe Schmidt, U Kiel,
Germany 1983.  Universal intermediate language, used by Norsk Data in their
family of compilers.  "A Multi-Language Compiler System with Automatically
Generated Codegenerators, U. Schmidt et al, SIGPLAN Notices 19(6):202-2121
(June 1984).

CATO - FORTRAN-like CAI language for PLATO system on CDC 1604.  "CSL PLATO
System Manual", L.A. Fillman, U Illinois, June 1966.

CAYLEY - Symbolic math system for group theory.  John Cannon, U Sydney,
Australia, 1976.  "An Introduction to the Group Theory Language CAYLEY", J.
Cannon, Computational Group Theory, M.D. Atkinson ed, Academic Press 1984,
pp.148-183.  Current version: V3.7
info: cayley@maths.su.oz.au

CBASIC - Gordon Eubanks, now at Symantec.  A BASIC compiler.  Evolved
from/into EBASIC.

CCalc - Symbolic math for MS-DOS, available from Simtel.

CCL - 

  1. Coral Common LISP.

  2. Computer Control Language.  English-like query language based on
COLINGO, for IBM 1401 and IBM 1410.  

CCLU - Cambridge CLU.  G. Hamilton et al, CUCL.  CLU extended to support
concurrency, distributed programming, remote procedure calls.
contact: Jean Bacon <jmb@cl.cam.ac.uk>

CCP - Concurrent Constraint Programming.  Not a language, but a general
approach.

CCS - Calculus of Communicating Systems.  "A Calculus of Communicating
Systems", LNCS 92, Springer 1980.  "Communication and Concurrency", R.
Milner, P-H 1989.

CCSP - Based on CSP.  "Contextually Communicating Sequential Processes - A
Software Engineering Approach", M. Hull et al, Software Prac & Exp
16(9):845-864 (Sept 1986).

CDL -

  1. Computer Definition Language.  A hardware description language. 
"Computer Organization and Microprogramming", Y. Chu, P-H 1970.

  2. Command Defintion Language.  Portion of ICES used to implement
commands.  Sammet 1969, p.618-620.

  3. Compiler Definition Language.  "Using the CDL Compiler Compiler", in
C.H.A. Koster, pp.366-426.  Variant: CDLM used at Manchester.

  4. Common Design Language.  "Common Design Language", IBM, Software
Engineering Inst, Sept 1983.

Cedar - Superset of Mesa, adding garbage collection, dynamic types and a
universal pointer type (REF ANY).  A large complex language designed for
custom Xerox hardware and the Cedar OS/environment.  Data types: atoms,
lists, ropes ("industrial strength" strings), conditions.  Multiprocessing
features include threads, monitors, signals and catch phrases.  "A
Description of the Cedar Language", Butler Lampson, Xerox PARC, CSL-83-15
(Dec 1983).  "The Structure of Cedar", D. Swinehart et al, SIGPLAN Notices
20(7):230-244 (July 1985).

CELIP - A cellular language for image processing.  "CELIP: A cellular
Language for Image Processing", W. Hasselbring <willi@informatik.uni-
essen.de>, Parallel Computing 14:99-109 (1990).

CELLSIM - Modeling populations of biological cells.  "CELLSIM II User's
Manual", C.E. Donaghey, U Houston (Sep 1975).

CELP - Computationally Extended Logic Programming.  "Computationally
Extended Logic Programming", M.C. Rubenstein et al, Comp Langs 12(1):1-7
(1987).

CESSL - CEll Space Simulation Language.  Simulating cellular space models. 
"The CESSL Programming Language", D.R. Frantz, 012520-6-T, CS Dept, U
Michigan (Sept 1971).

CFD - Computational Fluid Dynamics.  FORTRAN-based parallel language for
the Illiac IV.

CFP - Communicating Functional Processes.  "Communicating Functional
Processes", M.C. van Eekelen et al, TR 89-3, U Nijmegen, Netherlands, 1989.

CGGL - ("seagull") Code-Generator Generator Language.  A machine-
description language based on modeling the computer as a finite-state
machine.  "A Code Generator Generator Language", M.K. Donegan et al,
SIGPLAN Notices 14(8):58-64 (Aug 1979).

CGOL - V.R. Pratt, 1977.  A package providing ALGOL-like surface syntax for
MACLISP.  "CGOL - An Alternative Exernal Representation for LISP Users", V.
Pratt, MIT AI Lab, Working Paper 89, 1976.
ftp: mc.lcs.mit.edu:its/ai/lisp/cgol

CHARITY - Cockett, Spencer, Fukushima, 1990-1991.  Functional language
based purely on category theory.  "About Charity", J.R.B. Cockett
<cockett@cpcs,ucalgary.ca> et al.  Version for Sun4 available from Tom
Fukushima <fukushim@cpsc.ucalgary.ca>.

CHARME - Bull, 1989.  A language with discrete combinatorial constraint
logic aimed at industrial problems such as planning and scheduling. 
Implemented in C.  An outgrowth of ideas from CHIP.
info: cras@bull.fr

CHARYBDIS - LISP program to display math expressions.  Related to MATHLAB. 
Sammet 1969, p.522.

CHASM - CHeap ASseMbler.  Shareware assembler for MS-DOS.

CHILI - PL/I-like language for systems proramming.  "CHILI, An Algorithmic
Language for Systems Programming", CHI-1014, Chi Corp (Sep 1975).

CHILL - CCITT HIgh-Level Language.  ca. 1980.  Real-time language widely
used in European telecommunications.  "An Analytical Description of CHILL,
the CCITT High Level Language", P. Branquart, LNCS 128, Springer 1982.

CHIP - 

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

  2. Constraint Handling In Prolog.  M. Dincbas, ECRC Munich 1985. 
Includes boolean unification and a symbolic simplex-like algorithm. 
Introduced the domain-variable model.  "The Constraint Logic Programming
Language CHIP", M. Dincbas et al, Proc 2nd Intl Conf on Fifth Generation
Computer Sys, Tokyo (Nov 1988), pp.249-264.  "Constraint Satisfaction in
Logic Programming", Van Hentenryck.  Available from Cosytec, Orsay France.

CHIP-48 - Reimplementation of CHIP-8 for the HP-48 calculator.  Andreas
Gustafson <gson@niksula.hut.fi>, comp.sys.handhelds, Sep 1990.
ftp: vega.hut.fi:pub/misc/hp48sx/asap/*

CHIP-8 - RCA, Late 70's.  Low-level language (really a high-level machine
code) for video games on computers using RCA's CDP1802 processor: COSMAC
VIP, DREAM 6800 and ETI-660.  Now there's an interpreter for the Amiga.
ftp: ux1.cso.uiuc.edu:pub/amiga/fish/f5/ff537

CHOCS - Generalization of CCS.  "A Calculus of Higer-Order Communicating
Systems", B. Thomsen, 16th POPL pp.143-154 (1989).

CIEL - Object-oriented Prolog-like language.  "CIEL: Classes et Instances
En Logique", M. Gandriau, Thesis ENSEEIHT (1988).

CIL - Common Intermediate Language.  "Construction of a Transportable,
Milti-Pass Compiler for Extended Pascal", G.J. Hansen et al, SIGPLAN
Notices 14(8):117-126 (Aug 1979).

CIP-L - CIP Language.  (CIP stands for Computer-aided Intuition-guided
Programming.)  Incremental program transformation.  There are ALGOL-like
and Pascal-like variants.  "The Munich Project CIP, v.I: The Wide Spectrum
Language CIP-L", LNCS 183, Springer 1984.

CIRCAL - "CIRCAL and the Representation of Communication, Concurrency and
TIme", G.J. Mitre, ACM TOPLAS 7(2):270-298 (1985).

CITRAN - Caltech's answer to MIT's JOSS.  Sammet 1969, p.217.

CL - Control Language.  Batch language for the IBM RPG/38, used in
conjunction with RPG III.  (See OCL).

CLAM - Symbolic math, especially General Relativity.  Implemented in ATLAS
assembly language first, LISP later.  "CLAM Programmer's Manual", Ray
d'Inverno & Russell-Clark, King's College London, 1971.  (see ALAM).

Clarion - MS-DOS 4GL.

CLASP - Subset of SPL[2].

Clean - Subset of Lean.  Experimental lazy higher-order functional language
with no syntactic sugaring (not even infix expressions or complex lists.) 
Also used as an intermediate language.  Implemented via graph rewriting on
the ABC abstract machine.  "Clean - A Language for Functional Graph
Rewriting", T. Brus et al, IR 95, U Nijmegen, Feb 1987.  (see Concurrent
Clean).

CLEAR - Specification language based on initial algebras.  "An Informal
Introduction to Specification Using CLEAR", R.M. Burstall in The
Correctness Problem in Computer Science, R.S. Boyer et al eds, Academic
Press 1981, pp.185-213.

C-Linda - The most widely used variant of Linda, with C as the base
language.  Available from Sci Comp Assocs <linda@sca.com>.

CLIP - 

  1. Compiler Language for Information Processing.  1958-1959.  Based on
IAL, led to JOVIAL.  One of the first languages used to write its own
compiler.  Sammet 1969, p.635.

  2. Common LISP in Parallel.  Allegro.  Version for the Sequent Symmetry.

Clipper - Compiled dBASE dialect from Nantucket Corp, LA.  Versions: 
Winter 85, Spring 86, Autumn 86, Summer 87, 4.5 (Japanese Kanji), 5.0.

CLIPS - C Language Integrated Production System.  NASA JSC.  A forward-
chaining rule-based language with LISP-like syntax that has the inferencing
and representation capabilities of OPS5.  A language for developing expert
systems, now with support for three paradigms: rule-based, object-oriented
and procedural.  Available for MS-DOS, comes with source code in C. 
COSMIC, U Georgia, (404) 542-3265.  Versions: CLIPS 5.1, CLIPS/Ada 4.3. 
(See PCLIPS).
info: service@cossack.cosmic.uga.edu
telnet: cosline,cosmic.uga.edu

CLIX - "Overview of a Parallel Object-Oriented Language CLIX", J. Hur et
al, in ECOOP '87, LNCS 276, Springer 1987, pp.265-273.

CLOS - Common LISP Object System.  Object-oriented extension to Common
LISP, based on generic functions, multiple inheritance, declarative method
combination and a meta-object protocol.  A descendant of CommonLoops. 
"Common LISP Object System Specification X3J13 Document 88-002R", D.G.
Bobrow et al, SIGPLAN Notices 23 (Sep 1988).  (See PCL[2]).
ftp: parcftp.xerox.com:pcl

CLP - 

  1. Cornell List Processor.  Extension of CORC for list processing. 
Sammet 1969, p.461.

  2. Constraint Logic Programming.  A programming framework based (as
Prolog) on LUSH (or SLD) resolution, but in which unification has been
replaced by a constraint solver.  A CLP interpreter contains a Prolog-like
inference engine and an incremental constraint solver.  The engine sends
constraints to the solver one at a time.  If the new constraint is
consistent with the collected constraints it will be added to the set.  If
it was inconsistent, it will cause the engine to backtrack.  "Constraint
Logic Programming", J. Jaffar et al, 14th POPL, ACM 1987.

CLP(R) - Constraint Logic Programming (Real).  Joxan Jaffar
<joxan@watson.ibm.com> TJWRC & S. Michaylov, Monash U, 1986.  A
constraint-logic programming language with real-arithmetic constraints.  A
superset of Prolog.  "The CLP(R) Language and System", J. Jaffar et al, IBM
RR RC16292 (#72336) (Nov 1990).  Version: 1.1 for Unix systems.
info: <joxan@watson.ibm.com>

CLP* - Derivative of CLP.  "CLP* and Constraint Abstraction", T. Hickey,
16th POPL, pp.125-133, 1989.

CLU - CLUster.  1974-1975.  CLU is an object-oriented language of the
Pascal family designed to support data abstraction, similar to Alphard. 
Introduced the iterator: a coroutine yielding the elements of a data
object, to be used as the sequence of values in a 'for' loop.
    A CLU program consists of separately compilable procedures, clusters
and iterators, no nesting.  A cluster is a module naming an abstract type
and its operations, its internal representation and implementation. 
Clusters and iterators may be generic.  Supplying actual constant values
for the parameters instantiates the module.
    There are no implicit type conversions.  In a cluster, the explicit
type conversions 'up' and 'down' change between the abstract type and the
representation.  There is a universal type 'any', and a procedure force[]
to check that an object is a certain type.  Objects may be mutable or
immutable.
    Exceptions are raised using 'signal' and handled with 'except'. 
Assignment is by sharing, similar to the sharing of data objects in LISP.
Arguments are passed by call-by-sharing, similar to call by value, except
that the arguments are objects and can be changed only if they are mutable. 
CLU has own variables and multiple assignment.
    "CLU Reference Manual", Barbara Liskov et al, LNCS 114, Springer 1981.
ftp: pion.lcs.mit.edu - versions for Sun, VAX.
contact: Paul R. Johnson <prj@pm-prj.lcs.mit.edu>

Cluster 86 - Shang, Nanjing U ca1986.  Distributed object-oriented
language.  A cluster is a metatype.  "Cluster: An Informal Report", L.
Shang <lshang@inf.ethz.ch>, SIGPLAN Notices 26(1):57-76 (Jan 1991). 
Versions for MS-DOS, Unix.

CMAY - "A Microkernel for Distributed Applications", R. Bagrodia et al,
Proc 5th Intl Conf Distrib Comp Sys IEEE 1985, pp.140-149.

CML - 

  1. A query langauge.  "Towards a Knowledge Description Language", A.
Borgida et al, in On Knowledge Base Management Systems, J. Mylopoulos et al
eds, Springer 1986.

  2. Concurrent ML.  J. Reppy, Cornell 1990.  A concurrent extension of
SML/NJ, supporting dynamic thread creation and synchronous message passing
on typed channels.  Threads are implemented using first-class
continuations.  "CML: A Higher-Order Concurrent Language", John H. Reppy,
SIGPLAN Notices 26(6):293-305 (June 1991).
ftp: ftp.cs.cornell.edu:/pub/CML-0.9.tar.Z
info: cml-bugs@cs.cornell.edu

CMS-2 - General purpose language used for command and control applications
in the US Navy.  "CMS-2Y Programmers Reference Manual", M-5049, PDCSSA, San
Diego CA (Oct 1976).

CO2 - (a blend of C and O2).  Object-oriented database language.  GIP
Altair, Versailles, France.  Francois Bancilhon et al, in "Advances in
Object-Oriented Database Systems", K.R. Dittrich ed, LNCS 334, Springer
1988.

COBOL - COmmon Business Oriented Language.  1960.  CODASYL Committee, Apr
1960.  Simple computations on large amounts of data.  The most widely used
programming language today.  The natural language style is intended to be
largely self-documenting.  Introduced the record structure.  "Initial
Specifications for a Common Business Oriented Language" DoD, US GPO, Apr
1960.  Major revisions in 1968 (ANS X3.23-1968), 1974 (ANS X3.23-1974), and
1985.

COBOL-1961 Extended - Short-lived separation of COBOL specifications. 
Sammet 1969, p.339.

CoCoA - [Symbolic math?  On a Radio Shack CoCo???  I have no idea.]

CODIL - COntext Dependent Information Language.  Early language for non-
numerical business problems.  "CODIL, Part1.  The Importance of
Flexibility", C.F. Reynolds et al, Computer J 14(3):217-220 (May 1971).

COFF - Common Object File Format.  Binary file format used by Unix System V
Release 3.

COGENT - COmpiler and GENeralized Translator.  Compiler writing language
with list processing features, for CDC 3600 and CDC 3800.  "COGENT
Programming Manual", J.C. Reynolds, ANL-7022, Argonne, Mar 1965.  Sammet
1969, p.638.  "An Introduction to the COGENT System", J.C. Reynolds, Proc
ACM 20th Natl Conf, 1965.

COGO - Co-ordinate geometry problems in Civil Engineering.  A subsystem of
ICES.  "Engineer's Guide to ICES COGO I", R67-46, CE Dept MIT (Aug 1967).

Coherent Parallel C - Data parallel language.  "Coherent Parallel C", E.
Felten et al in "Third Conf on Hypercube Concurrent Computers and Appls",
ACM, 1988, pp.440-450.

COIF - FORTRAN with interactive graphic extensions for circuit design, on
UNIVAC 1108.  "An Interactive Software System for Computer-Aided Design: An
Application to Circuit Projects", CACM 9(13) (Sep 1970).

COLASL - Early system for numerical prolems on IBM 7030.  Special character
set for input of natural math expressions.  Sammet 1969, pp.265-271.

COLD - A sugared version of COLD-K.

COLD-K - Formal design kernel language for describing (sequential) software
systems in intermediate stages of their design.  "An Introduction to COLD-
K", H.B.M. Jonkers in Algebraic Methods: Theory, Tools and Applications, M.
Wirsing et al eds, LNCS 394, Springer 1989, pp.139-205.

COLINGO - Compile On-LINe and GO.  MITRE Corp.  English-like query system
for IBM 1401.  "The COLINGO System Design Philosophy", Information System
Sciences, Proc Second Congress, 1965.  Sammet 1969, p.664.

COMAL - Benedict Loefstedt & Borge Christensen, 1973.  A language for
beginners, popular in Europe and Scandinavia.  Pascal-like structure added
to BASIC.  COMAL-80 has been adopted as an introductory language in
Denmark.  "Beginning COMAL", B. Christensen, Ellis Harwood 1982.  COMAL
User's Group, 5501 Groveland Terr, Madison WI 53716.  Version for Amiga.

COMIT - 1957-8.  The first string-handling and pattern-matching language,
designed for applications in natural language translation.  The user has a
workspace organized into shelves.  Strings are made of constituents
(words), accessed by subscript.  A program is a set of rules, each of which
has a pattern, a replacement and goto another rule.  "COMIT Programmer's
Reference Manual", V.H. Yngve, MIT Press 1961.  Sammet 1969, pp.416-436.

COMIT II - "Computer Programming with COMIT II", Victor H. Yngve, MIT
Press, 1963.

Comma - COMputable MAthematics.  Esprit project at KU Nijmegen.

COMMEN - L.J. Cohen.  Proc SJCC 30:671-676, AFIPS (Spring 1967).

Commercial Translator - English-like pre-COBOL language for business data
processing.  Sammet 1969, p.378.

Common LISP - An effort begun in 1981 to merge the MACLISP and INTERLISP
dialects of LISP.  The result is a large and complex language.  Lexical
binding, data structures using defstruct and setf, closures, multiple
values, types using declare, a variety of numerical types.  Function calls
allow optional, keyword and &rest arguments.   Generic sequence can either
be a list or an array.  Formatted printing using escape characters. 
"Common LISP: The Language", Guy L. Steele, Digital Press 1984.
ftp: a.gp.cs.cmu.edu:/afs/cs.cmu.edu/project/clisp/release
list: common-list@mcc.com.

CommonLoops - "CommonLoops: Merging Lisp and Object-Oriented Programming",
D.G. Bobrow et al, SIGPLAN Notices 21(11):17-29 (Nov 1986).  (see CLOS,
PCL).
ftp: arisia.xerox.com - Pcl (Portable CommonLoops)
info: CommonLoops@xerox.com

CommonObjects - "Inheritance and the Development of Encapsulated Software
Components", A. Snyder, Proc 20th Hawaii Conf on Sys Sci, pp.227-238
(1987).

Compact COBOL - Subset of COBOL defined, but not published, ca. 1961. 
Sammet 1969, p.339.

Compas Pascal - Predecessor of Turbo Pascal, by POLY Data of Denmark. 
Later renamed POLY Pascal, and afterwards sold to Borland.

COMPASS - COMPrehensive ASSembler.  Assembly language on CDC machines.

Compel - COMpute ParallEL.  The first single-assignment language.  "A
Language Design for Concurrent Processes", L.G. Tesler et al, Proc SJCC
32:403-408, AFIPS (Spring 1968).

Compiler-Compiler - Early compiler generator for the Atlas, with its own
distinctive input language.  "The Compiler-Compiler", R.A. Brooker et al,
Ann Rev Automatic Programming 3:229-275, Pergamon 1963.

COMPL - "The COMPL Language and Operating System", A.G. Fraser et al,
Computer J 9(2):144-156 (1966).

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

COMPROSL - COMpound PROcedural Scientific Language.  Language for
scientists or engineers.  Sammet 1969, p.299-300.

Computer Animation Movie Language.  "A Computer Animation Movie Language
for Educational Motion Pictures", D.D. Weiner et al, Proc FJCC 33(2), AFIPS 
(Fall 1968).

Computer Compiler - Proposed language for compiler design.  Sammet 1969,
p.695.

Computer Design Language - ALGOL-like language for computer design.  "An
ALGOL-like Computer Dewsign Language", Y. Chu, CACM 8(10) (Oct 1965).

COMSL - COMmunication System Simulation Language.  "COMSL - A Communication
System Simulation Language", R.L. Granger, Proc FJCC 37 (1970).

COMTRAN - "Communications Computer Language COMTRAN", D.W. Clark et al,
RADC-TR-69-190, Rose Air Development Center, Griffiss AFB, NY (July 1969). 
Sammet 1969, p.324, 331.

ConC - Concurrent extension of C based on DPN (decomposed Petri nets),
using 'handshake' and 'unit' constructs.  "ConC: A Language for Distributed
Real-Time Programming", V.K. Garg et al, Computer Langs 16(1):5-18 (1991).

CONCUR - "CONCUR, A Language for Continuous Concurrent Processes", R.M.
Salter et al, Comp Langs 5(3):163-189 (1981).

Concurrent C - 

  1. Extension of C with rendezvous-based concurrency.  "Concurrent C",
N.H. Gehani et al, Soft Prac & Exp 16(9):821-844 (1986).  "The Concurrent C
Porgramming Language", N. Gehani et al, Silicon  Press 1989.

  2. Extension of C with asynchronous message passing.  "Concurrent C: A
Language for Distributed Systems", Y. Tsujino et al, Soft Prac & Exp
14(11):1061-1078 (Nov 1984).

Concurrent C++ - "Concurrent C++: Concurrent Programming with Class(es)",
N. Gehani, Bell labs 1986.

Concurrent Clean - An implementation of CFP.  A version of Clean for
loosely coupled parallel architectures.  Compiles to the PABC machine. 
"Concurrent Clean", M.C. van Eekelen et al, TR 89-18, U Nijmegen,
Netherlands, 1989.
ftp: phoibos.cs.kun.nl:pub/Clean    simulator for Mac and Sun
info: Ron Wichers <ronny@cs.kun.nl>

Concurrent CLU - Hamilton, 1984.  "Preserving Abstraction in Concurrent
Programming", R. Cooper et al, IEEE Trans Soft Eng SE-14(2):258-263 (Feb
1988).

Concurrent Euclid - J.R. Cordy & R.C. Holt, U Toronto, 1980.  Subset of
Euclid ("Simple Euclid") with concurrent extensions.  Separate compilation,
modules, processes and monitors, signal and wait on condition variables. 
'Converters' to defeat strong type checking, absolute addresses.  All
procedures and functions are re-entrant.  TUNIS (a Unix-like OS) is written
in Concurrent Euclid.  "Specification of Concurrent Euclid", J.R. Cordy &
R.C. Holt, Reports CSRI-115 & CSRI-133, CSRI, U Toronto, Jul 1980, rev. Aug
1981.  "Concurrent Euclid, The Unix System, and Tunis," R.C. Holt, A-W,
1983.

Concurrent LISP - "A Multi-Processor System for Concurrent Lisp", S.
Sugimoto et al, Proc 1983 Intl Conf parallel Proc, 1983 pp.135-143.

Concurrent Pascal - Brinch Hansen, 1972-75.  Extension of a Pascal subset,
Sequential Pascal.  The first language to support monitors.  Access to
hardware devices through monitor calls.  Also processes and classes.  "The
Programming Language Concurrent Pascal", Per Brinch Hansen, IEEE Trans Soft
Eng 1(2):199-207 (Jun 1975).

Concurrent Prolog - Ehud "Udi" Shapiro, Yale <shapiro-ehud@yale.edu>. 
Guarded clauses and committed-choice [= dont-care] nondeterminism.  A
subset's been implemented, but not the full language.  "Concurrent Prolog:
Collected Papers", E. Shapiro, V.1-2, MIT Press 1987.  (see Mandala).

Concurrent Scheme - M. Swanson <swanson%teewinot@cs.utah.edu>.  A parallel
Lisp, for the Mayfly.  "Concurrent Scheme", R.R. Kessler et al, in Parallel
Lisp: Languages and Systems, T. Ito et al eds, LNCS 441, Springer 1989.

ConcurrentSmalltalk - Concurrent variant of Smalltalk (what did you
expect).  "Concurrent Programming in ConcurrentSmalltalk", Y. Yokote et al
in Object-Oriented Concurrent Programming, A. Yonezawa et al eds, MIT Press
1987, pp.129-158.

CONIC - "Dynamic Configuration for Distributed Systems", J. Kramer et al,
IEEE Trans Soft Eng SE-11(4):424-436 (Apr 1985).

CONNIVER - AI language for automatic theorem proving.  An outgrowth of
PLANNER.  Allowed multiple database contexts with hypothetical assertions. 
"The CONNIVER Reference Manual", D. McDermott & G.J. Sussman
<gjs@zurich.ai.mit.edu>, AI Memo 259, MIT AI Lab, 1973.

CONSTRAINTS - Constraints using value inference.  "CONSTRAINTS: A Language
for Expressing Almost-Hierarchical Descriptions", G.J. Sussman et al, Artif
Intell 14(1):1-39 (Aug 1980).

Consul - Constraint-based language with LISP-like syntax.  "Consul: A
Parallel Constraint Language", D. Baldwin, IEEE Software 6(4):62-71.

CONVERT -

  1. String processing language, an extension of LISP with pattern matching
and transformation operations.  "Convert", A. Guzman et al, CACM 9(8):604-
615 (Aug 1966).

  2. Early language to convert programs and data from one language to
another.  "CONVERT Manual", OLI Systems Inc (Oct 1976).

COOL - 

  1. Concurrent Object-Oriented Language.  A parallel version of C++. 
"COOL: A Language for Parallel Programming", R. Chandra
<rohit@seagull.stanford.edu> et al in Languages and Compilers for Parallel
Computing, D. Gelernter et al eds, MIT Press 1990, pp.126-148.

  2. CLIPS Object-Oriented Language?

CORAL - Class Oriented Ring Associated Language.  L.G. Roberts, MIT 1964. 
Graphical display and systems programming on the TX-2.  Used "rings"
(circular lists) from Sketchpad.  "Graphical Communication and Control
Languages", L.B. Roberts, Information System Sciences: Proc Second
Congress, 1965.  Sammet 1969, p.462.

CORAL 66 - Real-time system programming language, a derivative of JOVIAL
and ALGOL-60.  It was adopted as the British military standard from 1970
until the arrival of Ada.  "Official Definition of CORAL 66", P.M. Woodward
et al, HMSO, London, 1970.

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

CORC - CORnell Compiler.  Simple language for student math problems.  "The
Cornell Computing Language", R.W. Conway et al, CACM 6(6):317-320 (Jun
1963)  Sammet 1969, p.294-296.

CORREGATE - Based on IT.  Sammet 1969, p.139.

Correlatives and Conversions - Data description language used in the Pick
OS.  "Exploring the Pick Operating System", J.E. Sisk et al, Hayden 1986.

Coursewriter III - ca. 1976.  Simple CAI language.  "Coursewriter III,
Version 3 Author's Guide", SH20-1009, IBM.

CP - A concurrent Prolog.  "The Concurrent Logic Programming Language CP":
Definition and Operational Semantics", V. Saraswat, 14th POPL, ACM 1987,
pp.49-62.

CParaOps5 - Anurag Acharya, <acharya@cs.cmu.edu>.  Parallel version of
OPS5, written in C and compiling to C.  Available for Unix, Mach, Encore
Multimaxen, and Sequent.  Version: 5.4.
ftp: dravido.soar.cs.cmu.edu:/usr/nemo/cparaops5/CParaOPS5-5.4.tar.Z 

CPL - Combined Programming Language.  U Cambridge and U London.  Similar to
ALGOL 60 but quite complex.  Never fully implemented, died with the Atlas
computer.  Led to the much simpler BCPL.  "The Main Features of CPL", D.W.
Barron et al, Computer J 6(2):134-143 (Jul 1963).

C-Prolog - F. Pereira <pereira@research.att.com> et al, Jul 1982.  An
implementation of Prolog in C.  No garbage collection.
ftp: hpserv1.cs.uit.no:pub/languages/cprolog.tar.Z

CPS - 

  1. Conversational Programming System.  Allen-Babcock Corp, 1965. 
Interactive extended subset of PL/I.  "Conversational Programming System
under TSO (PBPO), Terminal User's Manual", SH20-1197, IBM.  Sammet 1969,
p.232-240.

  2. Continuation Passing Style.  A semantically clean language with
continuations, has been used as an intermediate language for Scheme and the
SML/NJ compiler.  "Rabbit: A Compiler for Scheme", G.L. Steele, AI-TR-474,
MIT (May 1978).

CRISP - Jeff Barnett, SDC, Santa Monica CA, early 70's.  A LISP-like
language and compiler for the IBM 370.  Differences from LISP included a
generalization of 2-part cons nodes to n-part.

CRL - Carnegie Representation Language.  (c)Carnegie Group Inc.  Frame
language derived from SRL.  Written in Common LISP.  Used in the product
Knowledge Craft.

CROSSTABS - Simple language for statistical analysis of tabular data. 
"User's Manual for the CROSSTABS System", Cambridge Computer Assoc (Feb
1977).

Crystal - Concurrent Representation of Your Space-Time ALgorithms.  A
recursion equation parallel language.  "A Parallel Language and its
Compilation to Multiprocessor Machines or VLSI", M.C. Chen, 13th POPL, ACM
1986 pp.131-139.

CS-4 - [?]  Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac &
Exp 10:851-887 (1980).

CS-Prolog - Distributed logic language.  "CS-Prolog on Multi-Transputer
Systems", I. Futo et al, Microprocessors & Microsystems, March 1989.

C-Scheme - Joe Bartlett at DEC/WRL?  Dialect of Scheme implemented in and
embeddable in C.

csh - C-Shell.  William Joy.  Command shell interpreter and script language
for Unix.

CSL -

  1. Computer Structure Language.  A computer hardware description
language, written in BCPL.  "Computer Structure Language (CSL)", Proc 1975
Symp on Comp Hardware Description Languages and their Appl, ACM (Sep 1975).

  2. Control and Simulation Language.  "Control and Simulation Language",
J.N. Buxton et al, Computer J 5(3):194-199 (Oct 1962).  Version: CSL II.

CSM - "CSM - A Distributed Programming Language", S. Zhongxiu et al, IEEE
Trans Soft Eng SE-13(4):497-500 (Apr 1987).

CSMP - Continuous System Modeling Program.  Simulation of dynamics of
continuous systems.  Similar to CSSL.  "A Guide to Using CSMP - The
Continuous System Modeling Program", Frank H. Speckhart et al, P-H 1976.

CSP - Communicating Sequential Processes.  1978.  A notation for
concurrency based on synchronous message passing and selective
communications.  cobegin/coend.  "Communicating Sequential Processes", A.R.
Hoare, P-H 1985.

CSP/80 - Based on CSP.  "CSP/80: A Language for Communicating Processes",
M. Jazayeri et al, Proc Fall COMPCON80, IEEE pp.736-740 (Sept 1980).

CS/PCode - Used at Microsoft.

CSP/k - Concurrent SP/k.  A PL/I-like concurrent language.  "Structured
Concurrent Programming with Operating System Applications", R.C. Holt et
al, A-W 1978.

CSP-S - "Implementation of CSP-S for Description of Distributed
Algorithms", L. Patniak et al, Comput Lang 9(3):193-202 (1984).

CSPS - "Toward Comprehensive Specification of Distributed Systems", G.
Roman et al, Proc 7th Intl Conf on Distrib Comp Sys, IEEE 1987, pp.282-289.

CS/QCode - Used at Microsoft.

CSS/II - Computer System Simulator II.  Like GPSS, for IBM 360.  "Computer
System Simulator II (CSS II) Program Description and Operations Manual",
SH20-0875, IBM.

CSSA - Object-oriented language.  "Key Concepts in the INCAS Multicomputer
Project", J. Nehmer et al, IEEE Trans Soft Eng SE-13(8):913-923 (Aug 1987).

CSSL - Continuous System Simulation Language.  Versions include ACSL,
HYTRAN, SL-I, S/360 and CSMP.  "The SCi Continuous System Simulation
Language (CSSL)", Simulation, 9(6) (Dec 1967).

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

CTL - Checkout Test language.  "Checkout Test Language: An Interpretive
Language Designed for Aerospace Checkout Tasks", G.S. Metsker, Proc FJCC
33(2) (1968).

Cube - Three-dimensional visual language for higher-order logic.  "The Cube
Language", M. Najork et al, 1991 IEEE Workshop on Visual Langs, Oct 1991,
pp.218-224.

CUCH - CUrry-CHurch.  Lambda-calculus.  "A Type-Theoretical Alternative to
Xref: sparky comp.lang.misc:1729 comp.lang.functional:493 comp.object:1770