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

Berkeley FP - distributed with 4.2BSD
ftp: comp.sources.unix/Volume20: fpc translates FP programs to C.
    comp.sources.unix/volume13: FP by Andy Valencia

FP2 - Functional Parallel Programming.  Term rewrite rules used to specify
algebraic data types and parallel processes.  "Term Rewriting as a Basis
for the Design of a Functional and Parallel Programming Language.  A Case
Study: The Language FP2", Ph. Jorrand in Fundamentals of Artificial
Intelligence, LNCS 258, Springer 1986, pp.221-276.

FP/M - An intermediate language for functional languages, used to implement
Hope.  "The Compilation of FP/M Programs into Conventional Machine Code",
A.J. Field, Imperial College, London, 1985.  "Functional Programming", A.J.
Field & M.C. Harrison, A-W 1988.

FQL - Functional database language.  "An Implementation Technique for
Database Query Languages", O.P. Buneman et al, ACM Trans Database Sys
7(2):164-186 (June 1982).

FrameKit - Frame language.  "The FrameKit User's Guide", E. Nyberg, TR CMU-
CMT-88-MEMO, CMU 1988.

FRANK - "Using BINS for Interprocess Communication", P.C.J. Graham, SIGPLAN
Notices 20(2):32-41 (Feb 1985).

Franz Lisp - (named for the Hungarian composer Franz Liszt (1811-1886)) R.
Fateman et al, UC Berkeley ca 1980.  A subdialect of MACLISP.  "The FRANZ
LISP Manual", J.K. Foderaro et al. UC Berkeley 1980.

FRED - Robert Carr.  Language used by Framework, Ashton-Tate.

Fresh - "Fresh: A Higher-Order Language Based on Unification", G. Smolka,
in Logic Programming: Functions, Relations and Equations", D. DeGroot et
al, P-H 1986, pp.469-524.

FRINGE - C. Katz, GE, 1961.  Subcomponent of GE-255 GECOM system.  Sorting
and merging of data, reports and file maintenance.

FRL - Frame Representation Language.  MIT.  "The FRL Manual", R. Roberts et
al, AI Memo 409, MIT AI Lab, 1977.

FRMT-FTRN - Scientific language, listed [?] 1976.

FSL - Formal Semantics Language.  Language for compiler writing.  "A Formal
Semantics for Computer Languages and its Application in a Compiler-
Compiler", J.A. Feldman, CACM 9(1) (Jan 1966).  Sammet 1969, p.641.

Fugue - Music language, implemented in Xlisp.  "Fugue: A Functional
Language for Sound Synthesis", R.B. Dannenberg et al, Computer 24(7):36-41
(Jul 1991).

Fun - A typed lambda-calculus, similar to SOL[2].  "On Understanding Types,
Data Abstractions and Polymorphism", L. Cardelli et al, ACM Comp Surveys
17(4) (Dec 1985).

FUNLOG - Functional programming plus unification.  "Lazy" in the sense that
expressions are reduced only if they are not unifiable.  "FUNLOG: A
Computational Model Integrating Logic Programming and Functional
Programming", P.A. Subrahmanyam et al, in Logic Programming: Functions,
Relations and Equations, D. DeGroot et al eds, P-H 1986.

FX-87 - Effects.  A polymorphic language based on Scheme, allowing side
effects and first-class functions.  Attempts to integrate functional and
imperative programming.  Expressions have types, side effects (e.g.
reading, writing or allocating) and regions (stating where the effects may
occur).  "The FX-87 Reference Manual", D.K. Gifford <gifford@lcs.mit.edu>
et al, MIT/LCS/TR-407, Oct 1987.  Version: FX-89.
ftp: brokaw.lcs.mit.edu

FX-90 - Partial type and effect reconstruction and first-class modules.

G - 

  1. "G: A Functional Language with Generic Abstract Data Types", P.A.G.
Bailes, Computer Langs 12(2):69-94 (1987).

  2. Oregon State U 1988.  Combines functional, object-oriented,
relational, imperative and logic programming (you name it we got it).  "The
Multiparadigm Language G", J. Placer, Computer Langs 16:235-258(1991).

G++ - GNU's implementation of C++.
ftp: prep.ai.mit.edu:/pub/gnu/g++-1.39.0.tar.Z for Unix
     
Gabriel - Graphical DSP language for simulation and real systems.  "A
Design Tool for Hardware and Software for Multiprocessor DSP Systems," E.A.
Lee, E. Goei, J. Bier & S. Bhattacharyya, DSP Systems, Proc ISCAS-89, 1989.

GADS - Picture retrieval language.  "Integrated Geographical Databases: The
GADS Experience", P.E. Mantey et al, in Database Techniques for Pictorial
Applications, A. Blaser ed, pp.193-198.

Gaelic - For automated test programs.  Used in military, essentially
replaced by ATLAS.

Galaxy - An extensible language in the vein of EL/1 and RCC.  "Introduction
to the Galaxy Language", Anne F. Beetem et al, IEEE Software 6(3):55-62.

Galileo - "Galileo: A Strongly Typed Interactive Conceptual Language", A.
Albano et al, ACM Trans Database Sys 10(2):230-260 (June 1985).

Gambit - Compiler for Scheme R3.99, portable across 680x0 systems. 
Supports the 'future' construct of Multilisp.  Version: 1.7.1.
ftp:acorn.cs.brandeis.edu:/dist

GAMMA - 

  1. Generating matrices and mathematical programming reports.  "GAMMA 3.3
for MPS/MPSX, IBM System/360", Bonnor & Moore Assocs (Mar 1975).

  2. A high-level parallel language.  Research Directions in High-Level
Parallel Languages, LeMetayer ed, Springer 1992.

GAN - Generating and Analyzing Networks.  "GAN - A System for Generating
and Analyzing Acivity Networks", A. Schurmann, CACM 11(10) (Oct 1968).

GAP - Groups Algorithms and Programming.  Johannes Meier, Alice Niemeyer,
Werner Nickel, Martin Schonert, Aachen 1988.  Symbolic math for
computational group theory.
ftp: math.ucla.edu, version for Sun.

Gargoyle - For compiler writing.  J.V. Garwick, CACM 7(1):16-20, (Jan
1964).

GARP - Graphical language for concurrent programming.  "Visual Concurrent
Programmint in GARP", S.K. Goering er al, PARLE '89 v.II, LNCS 366, pp.165-
180.

GASP - Graph Algorithm and Software Package.  PL/I extension for
programming graph algorithms.  "GASP - Gprah Algorithm Software Package",
S. CHase, TR CS Dept, U Illinois, Dec 1969.

GAT - Generalized Algebraic Translator.  Improved version of IT.  On IBM
650 RAMAC.  Sammet 1969, p.142.

GATE - GAT Extended?  Based on IT.  Sammet 1969, p.139.

GAWK - GNU's implementation of AWK.
ftp: prep.ai.mit.edu:pub/gnu/gawk-2.13.tar.Z

G-Code - Johnsson & Augustsson, Chalmers Inst Tech.  Intermediate language
used by the G-machine, an implementation of graph reduction based on
supercombinators.  "Efficient Compilation of Lazy Evaluation", T. Johnsson,
SIGPLAN Notices 19(6):58-69 (June 1984).

GDPL - Generalized Distributed Programming Language.  "GDPL - A Generalized
Distributed Programming Language", K. Ng et al, Proc 4th Intl Conf Distrib
Comp Sys, IEEE 1984, pp.69-78.

GEA - Graph Extended ALGOL.  Extension of ALGOL-60 for graph manipulation,
on UNIVAC 1108.  "A Language for Treating Graphs", S. Crespi-Reghizzi et
al, , CACM 13(5) (May 1970).

GECOM - For the GE-255.  Somewhat akin to COBOL with some ALGOL features
added.  Comprised of ALGOL, COBOL, FRINGE and TABSOL.  FRINGE and TABSOL
may not have actually been implemented.  Sammet 1969, p.329.

Gedanken - John Reynolds, 1970.  "GEDANKEN - A Simple Typeless Language
Based on the Principle of Completeness and the Reference Concept", J.C.
Reynolds, CACM 13(5):308-319 (May 1970).

General Purpose Graphic Language - "A General Purpose Graphic Language",
H.E. Kulsrud, CACM 11(4) (Apr 1968).

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

Gerald - "Gerald: An Exceptional Lazy Functional Programming Language",
A.C. Reeves et al, in Functional Programming, Glasgow 1989, K. Davis et al
eds, Springer 1990.

GHC - Guarded Horn Clauses.  K. Ueda.  Parallel logic language similar to
Parlog.  Guards and commited-choice nondeterminism.  (see FGHC, KL1).

GIM-1 - Generalized Information Management Language.  Nelson, Pick,
Andrews.  Proc SJCC 29:169-73, AFIPS (Fall 1966).

GIN - Special-purpose macro assembler used to build the GEORGE 3 operating
system for ICL1900 series machines.

GIRL - Graph Information Retrieval Language.  Handling directed graphs. 
"Graph Information Retrieval Language", S. Berkowitz, Report 76-0085, Naval
Ship Res Dev Center, (Feb 1976).

GKS - Graphical Kernel System.

Glammar - A pattern transformation language for text-to-text translation,
Used for compiler writing and linguistics.
ftp: phoibos.cs.kun.nl:pub/GLASS/glammar.tar.Z

GLASS - General LAnguage for System Semantics.  Esprit project at KU
Nijmegen.
ftp: phoibos.cs.kun.nl:pub/GLASS

Glisp - Generalized LISP.  D.C. Smith, Aug 1990.  A coordinated set of
high-level syntaxes for Common LISP, written in Plisp.
ftp: bric-a-brac.apple.com:dts/mac/lisp

GLOS - Graphics Language Object System.  Dan Johnston dan@cs.uq.oz.au> and
Brian Hicks <cs.uq.oz.au>, U Queensland, St. Lucia 1978.  Graphics objects
correspond to language statements (e.g. line, circle, polygon etc).  New
objects defined using procedures.  2-D Transformations are context
dependent and may be nested.

Glypnir - 1966.  An ALGOL-like language with parallel extensions.  Similar
to Actus.  "GLYPNIR - A Programming Language for the Illiac IV", D.H.
Lawrie et al, CACM 18(3) (Mar 1975).

GMAP - GCOS Macro Assembler Program - Macro assembler for the GCOS 8
operating system on Honeywell/Bull DPS-8 machines.  "GCOS8 OS GMAP User's
Guide", Bull.

Gofer - An interpreted Haskell-like language.  "Introduction to Gofer
2.20", M.P.Jones.
ftp: nebula.cs.yale.edu:ftp/pub/glasgow

GOL - General Operating Language.  Subsystem of DOCUS.  Sammet 1969, p.678.

GOM - Good Old MAD.  Don Boettner, U Mich.  MAD for the IBM 360.  Parts of
the MTS Time-sharing system were written in GOM.

GOSPL - Graphics-Oriented Signal Processing Language.  A graphical DSP
language for simulation.  "Graphic Oriented Signal Processing Language -
GOSPL", C.D. Covington et al, Proc ICASSP-87, 1987.

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

GPL - 

  1. Generalized Programming Language.  General purpose language akin to
ALGOL.  Sammet 1969, p.195.

  2. "A Sample Management Application Program in a Graphical Data-driven
Programming language", A.L. Davis et al, Digest of Papers, Compcon Spring
81, Feb 1981, pp.162-167.

GPM - General Purpose Macro-generator.  Text-processing language similar to
TRAC.  "A General Purpose Macrogenerator", C. Strachey, Computer J
8(3):225-241 (Oct 1965).

GPSS - General Purpose Systems Simulator.  Geoffrey Gordon, 1960.  Discrete
simulations.  "The Application of GPSS V to Discrete System Simulation", G.
Gordon, P-H 1975.  Versions include GPSS II (1963), GPSS III (1965),
GPS/360 (1967), and GPSS V (1970).

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

GRAAL - ("Grail")  General Recursive Applicative and Algorithmic Language. 
FP with polyadic combinators.  "Graal: A Functional Programming System with
Uncurryfied Combinators and its Reduction Machine", P. Bellot in ESOP 86,
G. Goos ed, LNCS 213, Springer 1986.

GRAF - GRaphic Additions to FORTRAN.  FORTRAN plus graphic data types. 
"GRAF: Graphic Additions to FORTRAN", A. Hurwitz et al, Proc SJCC 30
(1967).  Sammet 1969, p.674.

GRAIL - Graphical Input Language.  Flowchart language entered on a grphics
tablet.  "The GRAIL Langauge and Operations", T.O. Ellis et al, RM-6001-
ARPA, RAND, Sept 1969.

GRAIN - Pictorial query language.  "Pictorial Information Systems", S.K.
Chang et al eds, Springer 1980.

Graphic ALGOL - Generation of shaded perspective picures in real time.
"An Extended ALGOL-60 for Shaded Computer Graphics", B. Jones, Proc ACM
Symp on Graphic Languages, Apr 1976.

Graphic Language - For specifying graphic operations.  "A Problem Oriented
Graphic Language", P.J. Schwinn, proc ACM 22nd Natl Conf, 1967.  Sammet
1969, p.677.

GRAPPLE - GRAPh Processing LanguagE.  1968.  "A Directed Graph
Representation for Computer Simulation of Belief Systems", L.G. Tesler et
al, Math Biosciences 2:19-40 (1968).

GREEN - A proposed language to meet the DoD Ironman requirements which led
to Ada.  This language was the winner.  "On the GREEN Language Submitted to
the DoD", E.W. Dijkstra, SIGPLAN Notices 13(10):16-21 (Oct 1978).

GRIND - GRaphical INterpretive Display.  Graphical input language for PDP-
9.  "GRIND: A Language and Translator for COmputer Graphics", A.P. Conn,
Dartmouth, June 1969.

Groff - GNU's implementation of roff.  (see nroff, troff).

GSBL - "GSBL: An Algebraic Specification Language Based on Inheritance", S.
Clerici et al in in ECOOP '88, S. Gjessing et al eds, LNCS 322, Springer
1988, pp.78-92.

GSPL - Greenberg's System Programming Language.  Bernard Greenberg.

GVL - Graphical View Language.  T.C.N. Graham & J.R. Cordy, Queen's U.
Canada.  A visual language for specifying interactive graphical output. 
"GVL: A Graphical, Functional Language for the Specification of Output in
Programming Languages", J.R. Cordy & T.C.N. Graham, Proc IEEE Intl Conf on
Comp Lang ICCL'90 (March 1990).

GW-BASIC - "Gee Whiz" BASIC.  Microsoft's BASIC with graphic extensions.

Gypsy - Specification and verification of concurrent systems software. 
Message passing using named mailboxes.  Separately compilable units:
routine (procedure, function, or process), type and constant definition,
each with a list of access rights. "Report on the Language Gypsy", A.L.
Ambler et al, UT Austin ICSCS-CMP-1 Aug 1976.

HAL/S - Real-time language used by NASA for onboard shuttle software. 
"Two-Dimensional Characteristics of HAL, A Language for Spaceflight
Applications", J.S. Miller, SIGPLAN Notices 7(10) (Oct 1972).

HALGOL - Hewlett-Packard.  A simple language for communicating with devices
such as modems and X.25 PADs.

HALMAT - Intermediate language used by HAL/S.

Haskell - (named for the logician Haskell B. Curry).  1990.  Designed by a
committee from the functional programming community.  A lazy purely
functional language largely derived from Miranda.  Static polymorphic
typing, higher-order functions, user-defined algebraic data types, and
pattern-matching list comprehensions.  Innovations include a class system,
operator overloading, functional I/O system, functional arrays, and
separate compilation.   "Report on the Programming Language Haskell Version
1.1", Paul Hudak & P. Wadler eds, CS Depts, U Glasgow and Yale U. (Aug
1991).

Yale Haskell - implemented in T, for SPARCstations.
info: haskell-request@cs.yale.edu

Glasgow Haskell - for Suns
ftp: vanuata.dcs.glasgow.ac.uk

Chalmers Haskell - implemented in LML.
ftp: animal.cs.chalmers.se:pub/haskell/chalmers, "hbc"
list: haskell-request@cs.yale.edu, HASKLD-L@YALEVM.BITNET.

HASL - SASL plus conditional unification.  "A Prological Definition of
HASL, A Purely Functional Language with Unification Based Conditional
Binding Expressions", H. Abramson in Logic Programming: Functions,
Relations and Equations, D. DeGroot et al eds, P-H 1986.

HCLP - Hierarchical CLP.  "Constraint Hierarchies and Logic Programming",
A. Borning et al, in Proc Sixth Intl Logic Prog Conf, June 1989, pp. 149-
164.

HCPRVR - "HCPRVR: An Interpreter for Logic Programs", D. Chester in Proc
First Natl Conf on AI, Stanford, 1980.

HDFL - Single assignment language.  "Methods for Handling Structures in
Data-Flow Systems", J.L. Gaudiot, Proc 12th Intl Symp Comp Arch, June 1985.

HDM - See SPECIAL.

HELP - DEA.  Language for industrial robots.

HEQS - E. Derman.  Constraint language for financial modeling.  Uses an
extension of the equation solver in IDEAL.  "A Simple Equation Solver and
Its Application to Financial Modeling", E. Derman et al, Soft Prac & Exp
14(12):1169-1181 (Dec 1984).

HERAKLIT - A distributed object-oriented language.  "Definition einer
objektorientierten Programmiersprache mit hierarchischem Typkonzept", B.
Hindel, diss U Erlangen-Nuernberg, Dec 1987.

Hermes - IBM, June 1990.  An imperative, strongly typed process-oriented
language for complex distributed systems.  A follow-on effort to NIL[2]. 
Threads, relational tables, typestate checking, capability-based access,
dynamic configuration.  "Hermes: A Language for Distributed Computing", R.
Strom et al, P-H 1991, ISBN 0-13-389537-8.
ftp: software.watson.ibm.com:pub/hermes 0.7alpha for Unix
info: hermes-request@watson.ibm.com

HiLog - W. Chen et al, Stony Brook, 1989.  Logic programming in higher
order logic.  "HiLog as a Platform for Database Languages (Or Why Predicate
Calculus is Not Enough)", W. Chen et al, 2nd Intl Workshop on Database Prog
Langs, Morgan Kaufmann, 1989.
ftp: sbcs.sunysb.edu:SB-hilog

HINT - Hierarchical Information NeTs.  For CDC 3600.  "HINT: A Graph
Processing Language", R.D. Hart, Michigan State U, Apr 1970.

HLISP - "Monocopy and Associative Algorithms in an Extended Lisp", E. Goto,
U Tokyo May 1974.

HOL - Higher Order Logic.  A proof-generating system for higher order logic
based on LCF.  "HOL: A Machine Oriented Formulation of Higher Order Logic",
M.J.C. Gordon, Report 68, Comp Lab U Cambridge (1985).
HOL88 built on ML, from Mike Gordon <mjcg@cl.cam.ac.uk> 
HOL90 built on SMLNJ, from Brian Graham <graham@cpsc.ucalgary.ca>
ftp: cpsc.ucalgary.ca:pub/hol90.tar.Z for Sun 4
list: info-hol@clover.ucdavis.edu

Honeywell-800 Business Compiler - Another name for FACT.  Sammet 1969,
p.327.

Hope - ("springs eternal" and so forth.)  R.M. Burstall, U Edinburgh 1978. 
Functional language with polymorphic types and lazy lists.  First language
to use call-by-pattern.  "HOPE, an Experimental Applicative Language", R.M.
Burstall et al, Conf Record 1980 LISP Conf, p.136-143 (Aug 1980), "A HOPE
Tutorial", R. Bailey, BYTE Aug 1985, pp.235-258.
ftp: brolga.cc.uq.oz.au.  PC Hope, plus a lazy variant for Unix, Mac

Hope+ - Hope with extensions.  "Hope+", N. Perry, Imperial College,
IC/FPR/LANG/2.5.1/7, 1988.

HOS-STPL - Hospital Operating System - STructured Programming Language.  A
FORTRAN-like language with structured extensions.  "HOS-STPL User Manual",
Health Services Research, US Public Health Service (Jan 1975).

HPcode - Stack-based intermediate language used by HP in many of its
compilers for RISC and stack-based architectures.  Supports Fortran, Ada,
Pascal, COBOL and C++.  Descended from Stanford's U-code.

HPCode-Plus - Descendant of HPcode with data types, developed to be an ANDF
language.  "ANDF: Finally an UNCOL After 30 Years", M.E. Benitez, Jack
Davidson <jwd@virginaia.edu> et al, CS TR-91-05 U Virginia (Mar 1991). 
(see ANDF).

HP-GL - Hewlett-Packard Graphics Language.  Vector graphics language used
by HP plotters.

HP-GL/2 - "HP-GL/2 Programmer's Guide", No. 5959-9733, HP.  (see PCL.)

HPL - Language used in HP9825A/S/T "Desktop Calculators", 1978(?) and
ported to the early Series 200 family (9826 and 9836, MC68000).  Fairly
simple and standard, but with extensive I/O support for data acquisition
and control (BCD, Serial, 16 bit custom and IEEE-488 interfaces), including
interrupt handling.  Currently owned by Structured Software Systems.  "HPL
Operating Manual for Series 200, Models 216, 226 and 235\6", HP 98614-
90010, Jan 1984.

HSL-FX - Hierarchical Specification Language - Function Extension.

HUGO - Geac.  A bytecode-interpreted transaction handler.

Hybrid - Concurrent object-oriented language.  "Active Objects in Hybrid",
O.M. Nierstrasz, SIGPLAN Notices 22(12):243-253 (OOPSLA '87) (Dec 1987).

Hyperscript - Informix.  The object-based programming language for Wingz,
used for creating charts, graphs, graphics, and customized data entry.

HyperTalk - The programming language for Macintosh HyperCard.

HyTime - A hypermedia extension of SGML.  "The HyTime Hypermedia/Time-based
Document Structuring Language", S. Newcomb et al, CACM 34(11):67-83 (Nov
1991).

IAL - International Algebraic Language.  Original name of ALGOL 58.
"Preliminary report - International Algebraic Language", CACM 1(12):8
(1958).

IAM - Interactive Algebraic Manipulation.  Interactive symbolic math for
PDP-10.  "IAM, A System for Interactive Algebraic Manipulation", C.
Christensen et al, Proc Second Symp Symb Alg Manip, ACM Mar 1971.

IBEX - Command language for Honeywell's CP-6 OS.

ICES - Integrated Civil Engineering System.  Subsystems include COGO,
STRUDL, BRIDGE, LEASE, PROJECT, ROADS and TRANSET.  Internal langguages
include ICETRAN and CDL.  "An Integrated Computer System for Engineering
Problem Solving", D. Roos, Proc SJCC 27(2), AFIPS (Spring 1965).  Sammet
1969, pp.615-620.

ICETRAN - An extension of FORTRAN IV.  Component of ICES.  Sammet 1969,
p.617.

Icon - Griswold, 1970's.  A descendant of SNOBOL4 with Pascal-like syntax. 
Icon is a general-purpose language with special features for string
scanning.  Dynamic types.  The central theme of Icon is the generator: when
an expression is evaluated it may be suspended and later resumed, producing
a result sequence of values until it fails.  Resumption takes place
implicitly in two contexts: iteration which is syntactically loop-like
('every-do'), and goal-directed evaluation in which a conditional
expression automatically attempts to produce at least one result. 
Expressions that fail are used in lieu of Booleans.  Data backtracking is
supported by a reversible assignment.  Icon also has co-expressions, which
can be explicitly resumed at any time.  "The Icon Programming Language",
Ralph & Marge Griswold, 2nd ed P-H 1990.
ftp: cs.arizona.edu
list: icon-group@arizona.edu

Iconicode - 1990-1992.  Visual dataflow language, token-based with
hierarchical, recursive and iterative constructs.  Version: IDF with
extensions for image processing.  "IDF: A Graphical Data Flow Programming
Language for Image Processing and Computer Vision", Neil Hunt, Proc IEEE
Conf on Systems Man & Cybernetics, IEEE, Nov 1990.  Available from Iconicon
<icon@teleos.com>.

IC-Prolog - Clark & McCabe, 1979.  Logic language with coroutining.  "IC-
Prolog Language Features", K.L. Clark <klc@doc.ic.ac.uk> et al in Logic
Programming, K.L. Clark et al eds, pp.253-266, Academic Press 1982.

Id - Irvine Dataflow.  Arvind & Gostelow.  Single assignment language, used
on MIT's Tagged-Token Dataflow Architecture (and soon on Motorola's
Monsoon).  Incrementally compiled, non-strict.  "An Asynchronous
Programming Language for a Large Multiprocessor Machine", Arvind et al,
TR114a, Dept ISC, UC Irvine, Dec 1978.  "The U-Interpreter", Arvind et al,
Computer 15(2):42-50 (1982).  (see Id Nouveau).

IDAMS - Pictorial retrieval language, implemented in APL.  "Concept of the
Diagnostic Image Workstation", D. Meyer-Ebrecht, Proc 2nd Conf on Picture
Archiving (PACS II), SPIE 418, pp.180-183 (1983).

IDEA - Interactive Data Entry/Access.  Data General.  A language in which
you designed the screen first, and then wrote the program around the
predefined fields.  Precursor to the DG COBOL Screen Section.

IDEAL - Van Wyk, Stanford 1980.  Numerical constraint language for
typesetting graphics into documents.  Inspired partly by Metafont.  "A
High-Level Language for Specifying Pictures", C.J. Van Wyk, ACM Trans
Graphics 1(2):163-182 (Apr 1982).  Distributed as part of Troff.

IDL -

  1. Interactive Data analysis Language.  Xerox.  Built on Interlisp-D.

  2. Interface Description Language.  Nestor, Lamb & Wulf, CMU 1981.
Description of data structures to be passed between the components of an
application, to provide a language-independent intermediate representation. 
"The Interface Description Language", R. Snodgrass, Computer Science Press
1989.  Also SIGPLAN Notices 22(11) (Nov 1987) special issue.
list: info-idl@sei.cmu.edu

IDMS - Pictorial query language, an extension of Sequel2.  "A Management
System for an Integrated Database of Pictures and Alphanumeric Data", G.Y.
Tang, Computer Graphics Image Processing 16:270-286 (1981).

Id Nouveau - Arvind <arvind@lcs.mit.edu> & Nikhil <nikhil@crl.dec.com>, LCS
MIT, ca. 1986.  Dataflow language, began as a functional language, added
streams, resource managers and I-structures (mutable arrays).  Loops are
syntactic sugar for tail recursion.  "Id Nouveau Reference Manual", R.S.
Nikhil, CS TR, MIT, March 1988.  "Id (Version 90.1) Reference Manual", R.S.
Nikhil, CSG Memo 284-2, LCS MIT, July 15, 1991.  (see Id).

IDS/I - Integrated Data Store.  Extension to COBOL involving "chains"
(circular lists), for GE computers.  "A General Purpose Programming System
for Random Access Memories", C.W. Bachman et al, Proc FJCC 26(1), AFIPS
(Fall 1964).  Sammet 1969, p.376.

IF1 - Intermediate language for dataflow hardware.  "The Manchester
Prototype Dataflow Computer", J.R. Gurd et al, CACM 28(1):34-52 (Jan 1985).

IFIP - Subset of ALGOL.  Sammet 1969, p.180.

IFP - Illinois FP.  Arch Robinson.  Variant of FP with Algol-like syntax. 
"The Illinois Functional Programming Interpreter", A.D. Robison, Proc 1987
SIGPLAN Conf on Interpreters and Interpretive Techniques (June 1987). 
"Illinois Functional Programming: A Tutorial", A.D. Robison, BYTE Feb 1987.
ftp: a.cs.uiuc.edu:pub/ifp - Versions for Unix and MS-DOS

IFX - "Type Reconstruction with First-Class Polymorphic Values", J. O'Toole
et al, SIGPLAN Notices 24(7):207-217 (Jul 1989).

IGL - Interactive Graphic Language.  Used primarily by Physics Dept at
Brooklyn Poly, uses numerical methods on vectors to approximate continuous
function problems that don't have closed form solutions. [Is this being
confused with Tektronix's graphics library by the same name?]

IIS - Idealized Instruction Set.  Assembly language for the Flagship
parallel machine.  "An Idealized Instruction Set for a Packet Rewrite
Machine", J. Sargeant, Manchester U, 1988.

IITRAN - Simple PL/I-like language for students, on IBM 360.  "The IITRAN
Programming Language", R. Dewar et al, CACM 12(10):569-575 (Oct 1969).

ILIAD - Real time language.  "On the Design of a Language for Programming
Real-Time Concurrent Processes", H.A. Schutz, IEEE Trans Soft Eng SE-
5(3):248-255 (May 1979).

ILLIAC - Assembly language for the ILLIAC computer.  Listed in CACM
2(5):16, (May 1959) p.16.

ILOC - Rice U.  Register-oriented intermediate language targeted to PC/RT. 
Source languages include FORTRAN and Russell.

IMP -

  1. IMProved Mercury Autocode.  Used to code the Edinburgh Multi Access
System (EMAS), one of the first OS's written in a high-level language,
apparently predating Unix.  References are in J British Computer Soc.  (see
Autocode).

  2. Extensible dialect of ALGOL-60, on CDC 1604.  "Experience with an
Extensible Language", Edgar T. Irons, CACM 13(1):31-39 (Jan 1970).

  3. Interpretive Menu Processor.  Used to implement much of the user
interface of the Alis office automation package from Applix, Inc.

Ina Jo - [FDM?]  "The Ina Jo Specification Language Reference Manual", J.
Scheid et al, TR TM-(L)-6021/001/00, SDC Mar 1985.

Info BASIC - Variant of Pick BASIC used with PRIME's PRIMOS.

Information Algebra - Theoretical formalism for DP, never resulted in a
language.  Language Structure Group of CODASYL, ca. 1962.  Sammet 1969,
709.

Inglish - English-like language used for Adventure games like "The Hobbit"
(could distinguish between "take the rope and axe" and "take the money and
run").

INTCODE - Intermediate language used in the implementation of BCPL.  "BCPL
- The Language and its Compiler", Martin Richards & Colin Whitby-Stevens,
Cambridge U Press 1979.  (See OCODE).

INTELLECT - Larry Harris, 1977.  A query language, close to natural
English.

INTERCAL - (Allegedly stands for "Compiler Language With No Pronounceable
Acronym").  Woods & Lyon, Princeton U, May 26, 1972.  Claims to have
nothing in common with any other major programming language.  "The INTERCAL
Programming Language Reference Manual", Donald R. Woods & James M. Lyon. 
C-INTERCAL implementation as a C preprocessor by Eric Raymond.
ftp: ftp.white.toronto.edu, also comp.sources.misc/Volume16

INTERCOM - Assembly language for the G-15.  Listed in CACM 2(5):16 (May
1959).
Versions: INTERCOM 101, INTERCOM 1000.

INTERLISP - Once INTERLISP was one of two main branches of LISP (the other
being MACLISP).  In 1981 Common LISP was begun in an effort to combine the
best features of both.  INTERLISP includes a LISP programming environment. 
"INTERLISP Programming Manual", W. Teitelman, TR, Xerox Rec Ctr 1975.

Intermediate Programming Language - Arthur W. Burks.  A very early attempt
to express machine language at a higher level of abstraction.  Like
Plankalkul, it used a right-handed style of assignment, in which the new
value appears on the right.

Interpress - Xerox.  Interpretive FORTH-like graphics language, possibly
the first page description language, predating PostScript.  Both are
descendants of JaM.  Used on Xerox printers.  "Interpress, The Source
Book", Steven Harrington et al, P-H 1988.

Iota - Specification language.  "The Iota Programming System", R. Nakajima
er al, Springer 1983.

IPL - Information Processing Language.  Allen Newell, J.C. Shaw, H. Simon,
Carnegie ca. 1956.  Said to be the first list-processing language, also the
first language to support recursion.  Very low level.  Sammet 1969, pp.388-
400.  "Information Processing Language-V Manual", A. Newell ed, P-H 1965. 
Versions: IPL-I (never implemented), IPL-II (1957 for JOHNNIAC), IPL-III
(existed briefly), IPL-IV, IPL-V (1958, for IBM 650, 704, 7090, many
others.  Widely used), IPL-VI.

IPS - Threaded language.  "IPS, An Unorthodox High Level Language", K.
Meinzer, BYTE pp.146-159 (Jan 1979).

IQ - Pictorial query language, implemented in Ratfor.  "Structured
Implementation of an Image Query Language", Y.E. Lien et al, in Database
Techniques for Pictorial Applications, A. Blaser ed, pp.416-430.

Ironman - HOLWG, DoD, 1978.  Fourth of the series of DoD requirements that
led to Ada.  "Department of Defense Requirements for High Order Computer
Programming Languages", SIGPLAN Notices 12(12):39-54 (Dec 1977).  (see
Strawman, Woodenman, Tinman, Steelman).

ISBL - Mathematical query language.

ISETL - Interactive SETL.  Gary Levin <gary@clutx.clarkson.edu>, Clarkson
U.  "An Introduction to ISETL Version 1.9", G.M. Levin, Dept MCS, Clarkson
U.  Current version: 3.0.
ftp: sun.soe.clarkson.edu, for MS-DOS, Mac, Unix, VAX/VMS, and source.

ISIS - 

  1. Dialect of JOSS.  Sammet 1969, p.217.

  2. Concurrent language?

ISO Pascal - Pascal standard, ISO 7185-1982.  Changes from Jensen & Wirth's
Pascal include: name equivalence; names must be bound before they are used;
loop index must be local to the procedure; formal procedure parameters must
include their arguments; conformant array schemas.  

ISP - Instruction Set Processor.  A family of languages for describing the
instruction sets of computers.  "Computer Structures: Readings and
Examples", D.P. Siewiorek et al, McGraw-Hill 1982.

ISPL - Instruction Set Processor Language.  ca 1971.  Original ISP
language, written in BLISS.  "Computer Structures: Readings and Examples",
D.P. Siewiorek et al, McGraw-Hill 1982.

ISPS - Instruction Set Processor Specifications.  Operational hardware
specification language.  Successor to ISPL.  IEEE Trans Computers, C-
30(1):24-80 (1981).

ISWIM - If You See What I Mean.  Landin 1966.  ISWIM is purely functional,
a sugaring of lambda calculus, and the ancestor of most modern applicative
languages.  An ISWIM program is a single expression qualified by 'where'
clauses (auxiliary definitions including equations among variables),
conditional expressions and function definitions.  ISWIM was the first
language to use lazy evaluation, and introduced the offside rule for
indentation.  "The Next 700 Programming Languages", P.J. Landin, CACM
9(3):157-166 (Mar 1966).

IT - Internal Translator.  A.J. Perlis et al, ca 1957.  Early compiler for
math originally for Burroughs 205, then IBM 650.  Forerunner of RUNCIBLE,
GATE, CORRELATE and GAT.  IT source code was converted to PIT, thence to
SPIT.  Sammet 1969, pp.139-141.  Versions: IT-2 produced machine language
directly, IT-3 developed at Carnegie added double-precision floating point. 
CACM 1(5):22 (1958).

Ivan - A Diana-like language making up part of VHDL.  "VHDL - The Designer
Environment", A. Gilman, IEEE Design & Test 3, (Apr 1986).

Iverson's Language - APL, which went unnamed for many years.  Sammet 1969,
p.770.

IVTRAN - 1966.  Parallel FORTRAN for the Illiac IV.

J - Derivative and redesign of APL.  Purely functional with lexical scope
and more conventional control structures, plus several new concepts such as
function rank and function arrays.  "APL\?"", Roger K.W. Hui et al, APL90
Conf Proc, Quote Quad 20(4):192-200.
ftp: watserv1.waterloo.edu:languages/apl/j

J3 - Dialect of JOVIAL.  "Military Standard JOVIAL (J3)", MIL-STD-1588
(USAF) (June 1976).

J73 - Yep, another JOVIAL dialect.  "Military Standard JOVIAL (J73)",
MIL-STD-1589 (USAF) (Feb 1977).

JACAL - Primitive symbolic math program, built on scm.
ftp: altdorf.ai.mit.edu:archive/scm

Jade - 

  1. U Washington, late 80's.  A strongly-typed language, object-oriented
but without classes.  For type research.  The compiler output is Smalltalk. 
[Submitter claimed that Jade has exactly one user!]

  2. Implicit coarse-grained concurrency.  The constructs 'withth',
'withonly' and 'without' create tasks with specified side effects to shared
data objects.  Implemented as a C preprocessor.  "Coarse-Grain Parallel
Programming in Jade", M.S. Lam et al, SIGPLAN Notices 26(7):94-105 (Jul
1991).

JaM - John and Martin.  J. Warnock & M. Newell, PARC 1978.  Interpretive
FORTH-like graphics language, forerunner of both Interpress and PostScript. 
Mentioned in "PostScript Language reference Manual", Adobe Systems, A-W
1985.

Janus - 

  1. Distributed language with an ask/tell constraint system.  "Janus: A
Step Towards Distributed Constraint Programming", V. Saraswat
<saraswat@parc.xerox.com> et al in Logic Programming: Proc 1990 North Am
Conf, S. Debray et al eds, MIT Press 1990.
ftp: cs.arizona.edu:janus/qdjanus-1.2, a sequential implementation built on
SICStus Prolog.

  2. "Experience with the Universal Intermediate Language Janus", B.K.
Haddon et al, Soft Prac & Exp 8(5):601-616 (Sep 1978).

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

JCL - Job Control Language.  Batch language on IBM OS/360 systems. 
Notoriously difficult to program in.

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

JEAN - A dialect of JOSS.

JOSS - JOHNNIAC Open Shop System.  Charles L. Baker, RAND 1964.  An early
simple interactive calculator language.  "JOSS Users' Reference Manual",
R.L. Clark, Report F-1535/9, RAND Corp (Jan 1975)  Sammet 1969, pp.217-226. 
Versions: JOSS I and JOSS II.

JOVIAL - Jule's Own Version of IAL.  Jules I. Schwartz 1959-1960.  Based on
ALGOL 58, with extensions for large scale real-time programming.  Saw
extensive use by the US Air Force.  The data elements were items, entries
(records) and tables.  CACM 6(12):721 (Dec 1960)[?].  Versions include
JOVIAL I (IBM 709, 1960), JOVIAL II (IBM 7090, 1961) and JOVIAL 3 (1965). 
Dialects: J3, JOVIAL J73, JS, JTS.

Joyce - Brinch Hansen.  Distributed language based on Pascal and CSP. 
"Joyce - A Programming Language for Distributed Systems", Per Brinch
Hansen, Soft Prac & Exp 17(1):29-50 (Jan 1987).

JPLDIS - Jet Propulsion Laboratory Display Information System.  Jack
Hatfield, George Masters, W. Van Snyder, Jeb Long et al, JPL.  Query system
for UNIVAC 1108 [or PDP's?] written in FORTRAN, based on Tymshare's
"Retrieve".  Indirectly led to Vulcan[1] which led to dBASE II.

JS - Dialect of JOVIAL.  Sammet 1969, p.639.

JTS - Simple dialect of JOVIAL.  Sammet 1969, p.528.

Juno - Numerical constraint-oriented language for graphics applications. 
Solves its constraints using Newton-Raphson relaxation.  Inspired partly by
Metafont.  "Juno, a Constraint-Based Graphics System", G. Nelson in
SIGGRAPH '85 Conf Readings, B.A. Barsky ed, Jul 1985, pp.235-243.

Jym - Patrick Bellot, France.  A predecessor to Graal.

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

Kaleidoscope - Freeman-Benson, U Washington and Universite de Nantes, 1989. 
Dynamically typed object-oriented language which mixes imperative and
constraint-oriented features.  Similar to Prose[2].  "Kaleidoscope: Mixing
Objects, Constraints and Imperative Programming", B.N. Freeman-Benson,
SIGPLAN Notices 25(10):77-88 (OOPSLA/ECOOP '90) (Oct 1990).  Version:
Kaleidoscope '90.

Kali - Data parallel language.  "Supporting Shared Data Structures on
Distributed Memory Architecures", C. Koelbel et al in Second ACM SIGPLAN
Symp on Princ and Prac of Parallel Programming, pp.177-186, Mar 1990.

Karel - Language featured in "Karel the Robot: A Gentle Introduction to
Computer Programming", Richard E. Pattis, Wiley 1981.
ftp: wuarchive.wustl.edu:/mirrors/unix-c/languages/pascal/karel.tar-z

KCL - Kyoto Common LISP.  Compiles to ANSI C.  "Design and Implementation
of Kyoto Common Lisp", T. Yuasa, J Info Proc 13(3):284-295 (1990).  "Kyoto
Common Lisp Report", T. Yuasa & M. Hagiya.
ftp: rascal.ics.utexas.edu
list: kcl@rascal.ics.utexas.edu

KEE - Knowledge Engineering Environment.  Frame-based expert system. 
Supports dynamic inheritance, multiple inheritance, polymorphism.  Classes,
meta-classes and objects are all treated alike.  A class  is an instance of
a meta-class.  Can control rules for merging of each field when multiple
inheritance takes  place.  Methods  are  written  in LISP.  Actions  may 
be triggered when fields are accessed or modified.  Extensive GUI
integrates with objects.  Can  easily make  object updates  to be 
reflected on  display or display selections  to update fields.   This can 
in turn trigger other  methods or  inference rules  which may  then update 
other parts of the display.  Intellicorp, for TI Explorer.  "The Role of
Frame-Based Representation in Reasoning", R. Fikes et al, CACM 28(9):904-
920 (Sept 1985).

Kernel Parlog - Modeless intermediate language for Parlog compilation. 
"Notes on the Implementation of Parlog", K.L. Clark et al, J Logic Prog
2(1):17-42 (1985).

Kid - Kernel language for Id.  A refinement of P-TAC, used as an
intermediate language for Id.  Lambda-calculus with first-class let-blocks,
plus I-structures.  "A Syntactic Approach to Program Transformations", Z.
Ariola et al, SIGPLAN Notices 26(9):116-129 (Sept 1991).

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

KL0 - Sequential logic language based on Prolog, for the ICOT project,
Japan.

KL1 - Kernel Language 1.  An experimental AND-parallel version of KL0 for
the ICOT project, Japan.  An implementation of FGHC.  "Design of the Kernel
Language for the Parallel Inference Machine", U. Kazunori et al, Computer J
(Dec 1990).

Klerer-May System - Columbia U.  Early system with special math symbols. 
Its reference manual was two pages long!  "Further Advances in Two-
Dimensional Input-Output by Typewriter Terminals", M. Klerer et al, Proc
FJCC 31 (1967).  Sammet 1969, pp.284-294.

KL-ONE - Frame language.  "An Overview of the KL-ONE Knowledge
Representation System", R.J. Brachman and J. Schmolze, Cognitive Sci 9(2),
1985.

KMODEL - An ancestor of Model-K.  "Preliminary Results on the BEHAVIOR
Specifications Language KMODEL-0", BEHAVIOR Memo 5-91, 1991, GMD, Sankt
Augustin, Germany

KOMPILER - Early system on IBM 701.  Listed in CACM 2(5):16 (May 1959).
Versions: KOMPILER 2 for IBM 701, KOMPILER 3 for IBM 704.

K&R C - C as originally described in "The C Programming Language", B.
Kernighan and D. Ritchie, in contrast to the proposed ANSI standard C.

KRC - Kent Recursive Calculator.  Turner 1981.  Lazy functional language
based on SASL, with pattern matching, ZF expressions.  "Functional
Programming and its Applications", David A. Turner, Cambridge U Press 1982.

KRL - Frame language.  "An Overview of KRL, a Knowledge Representation
Language", D.G. Bobrow and T. Winograd, Cognitive Sci 1:1 (1977).

KRS - Frame-based language built on Common LISP.

KRYPTON - Frame language.  "An Essential Hybrid Reasoning System: Knowledge
and Symbol Level Acounts of of KRYPTON", R.J. Brachman et al, Proc IJCAI-
85, 1985.

ksh - Korn Shell command interpreter for Unix.

L6 - Bell Telephone Laboratories Low-Level Linked List Language.  Ken
Knowlton, 1965.  List processing language, typeless.  "A Programmer's
Description of L6, Bell Telephone Laboratories' Low-Level Linked List
Language", K. Knowlton CACM 9(8):616-625 (Aug 1966).  Sammet 1969, pp.400-
405.

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

Lakota - Scripting language, extends existing OS commands.
info: Richard Harter <rh@smds.UUCP> SMDS Inc.

LAMINA - Concurrent object-oriented language.  "Experiments with a
Knowledge-based System on a Multiprocessor", Third Intl Conf Supercomputing
Proc, 1988.  "ELINT in LAMINA, Application of a Concurent Object language",
Delagi et al, KSL-88-3, Knowledge Sys Labs, Stanford U.

Language H - Early business-oriented language developed by NCR.

Laning and Zierler - J.H. Laning Jr and N. Zierler, 1953-1954.  Possibly
the first true working algebraic compiler.  On MIT's Whirlwind computer. 
Sammet 1969, pp.131-132.

LAP - LISP Assembly Program.  Assembly language embedded into early LISP. 
Sammet 1969, p.597.  Also used by the Liar compiler for MIT Scheme.

LAP4 - Early assembly language for Linc-8 machine.

LAPSE - Single assignment language for the Manchester dataflow machine.  "A
Single Assignment Language for Data Flow Computing", J.R.W. Glauert, M.Sc
Diss, Victoria U Manchester, 1978.

Larch - The Larch Project develops aids for formal specifications.  Each
Larch specification has two components: an interface containing predicates
written in the LIL (Larch Interface Language) designed for the target
language and a 'trait' containing assertions about the predicates written
in LSL, the Larch Shared Language common to all.  "The Larch Family of
Specification Languages", J. Guttag et al, IEEE Trans Soft Eng 2(5):24-365
(Sep 1985).

LARCH/CLU - Larch specification language for CLU.  Used in "Abstraction and
Specification in Program Development", B. Liskov & J. Guttag, MIT Press
1986.

LaTeX - An extension of TeX, incorporating document styles.  "LaTeX, A
Document Preparation System", Leslie Lamport, A-W 1986.

LAU - Langage a Assignation Unique.  Single assignment language for the LAU
dataflow machine, Toulouse.  "Pipelining, Parallelism and Asynchronism in
the LAU System", J.C. Syre et al, Proc 1977 Intl Conf Parallel Proc, pp.87-
92.

LAURE - A language for knowledge representation combining object
orientation and logic programming.  Object-oriented exception handling and
a polymorphic type system.
info: Yves Caseau <caseau@france.bellcore.com>

LCC - Language for Conversational Computing.  CMU 1960's.  "LCC Reference
Manual", H.R. Van Zoeren, CMU 1969.

LCL - 

  1. The Larch interface language for ANSI standard C.  J.V. Guttag et al,
TR 74, DEC SRC, Palo Alto CA, 1991.

  2. Liga Control Language.  Controls the attribute evaluator generator
LIGA, part of the Eli compiler-compiler.  "LCL: Liga Control Language", U.
Kastens, U Paderborn.

LCS - Language for Communicating Systems.  Bernard Barthomieu.  A
concurrent SML with behaviors and processes, based upon higher order CCS. 
Implemented as a bytecode interpreter in C, portable to Unix and Mac.
ftp: laas.laas.fr:pub/lcs
info: Bernard Berthomieu <bernard@laas.laas.fr>
list: lcs@laas.laas.fr

LDL - "LDL: A Logic-Based Data-Language", S. Tsur et al, Proc VLDB 1986,
Kyoto Japan, Aug 1986, pp.33-41.

LDT - Logic Design Translator.  Computer system design analysis.  Sammet
1969, p.621.

LEAF - 

  1. LISP Extended Algebraic Facility.  "An Algebraic Extension to LISP",
P.H. Knowlton, Proc FJCC 35 (1969).

  2. "LEAF: A Language which Integrates Logic, Equations and Functions", R.
Barbuti et al in Logic Programming, Functions Relations and Equations, D.
DeGroot et al eds, P-H 1986, pp.201-238.

Lean - U Nijmegen and U East Anglia.  An experimental language based on
graph rewriting, useful as an intermediate language.  Descendant of Dactl0. 
"Towards an Intermediate Languae Based on Graph Rewriting", H.P. Barendregt
et al in PARLE: Parallel Architectures and Languages Europe, G. Goos ed,
LNCS 259, Springer 1987, pp.159-175.  (see Clean).

LEAP - Language for the Expression of Associative Procedures.  ALGOL-based
formalism for sets and associative retrieval, for TX-2.  Became part of
Newsgroups: comp.lang.misc