The Language List - Version 2.3 (Part 6 of 11) 
Author Message
 The Language List - Version 2.3 (Part 6 of 11)

LADE - Compiler-compiler language?

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.

LAMBDA - A version of typed lambda calculus, used to describe semantic
domains.  "Outline of a Mathematical Theory of Computation", D.S. Scott, TM
PRG-2, PRG, Oxford U, 1971.

lambda-Prolog - An extension of standard Prolog, in which terms are typed
lambda-terms.  Prolog/Mali compiler uses the MALI abstract memory system.

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 Concurrent Object
language", Delagi et al, KSL-88-3, Knowledge Sys Labs, Stanford U.

Language H - NCR.  Early business-oriented language.

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, and

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/Ada - Used in the Penelope verification system, to provide semantics
for Ada' types.  Notationally similar to Anna.

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

LaTeX - see TeX.

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-

LAURE - A language for knowledge representation combining object
orientation and logic programming.  Set operations.  Object-oriented
exception handling and a polymorphic type system.  "An Object-Oriented
Language for Advanced Applications", in Proc TOOLS 5, Santa Barbara 1991,

LAVA - A language for VLSI that deals with "sticks", i.e. wires represented
as lines with thickness.  R.J. Matthews et al, "A Target Language for
Silicon Compilers", IEEE COMPCON, 1982, pp.349-353.

LAX - LAnguage eXample.  Toy language used to illustrate problems in
compiler design.  "Compiler Construction", W.M. Waite et al, Springer 1984.

LCC - Language for Conversational Computing.  CMU 1960's.  Similar to JOSS,
with declarations, pointers and block structure from ALGOL-60.  Implemented
for IBM 360/370 under TSS.  "LCC Reference Manual", H.R. Van Zoeren, CMU


  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.

LCS - Language for Communicating Systems.  Bernard Barthomieu.  A
concurrent SML with behaviors and processes, based upon higher order CCS.
Implemented as a bytecode interpreter.  Version 3.1 for Sun 3, Sun 4

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

LDL1 - Successor of LDL.  "Sets and Negation in a Logic Database Language",
C. Beeri et al, in Proc 6th Ann ACM Symp Princs Database Sys (1987), pp.21-

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

LE/1 - Langage External.  "An Evaluation of the LE/1 Network Command
Language Designed for the SOC Network", J. du Masle, in Command Languages,
C. Unger ed, N-H 1973.


  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 Language 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
SAIL.  "An ALGOL-based Associative Language", J.A. Feldman et al, CACM
12(8):439-449 (Aug 1969).

LECOM - Version of COMIT on GE 225 ca. 1966.  Sammet 1969, p.419.

Multiparadigm language (imperative, declarative, procedural, applicative,
functional, logic, and object-oriented!)  "Blending Imperative and
Relational Programming", Tim Budd, IEEE Software 8(1):58-65 (Jan 1991).
Forthcoming book.*

LeFun - MCC, Austin.  Integration of logic and functional programming.
"LeFun: Logic, Equations and Functions", H. Ait-Kaci et al, Proc 1987 Symp
on Logic Programming, San Francisco.

LEGOL - "Application of MP/3 to the Design and Implementation of LEGOL, A
Legally Oriented Language", S.H. Mandil et al, Intl Symp Programming, Paris

Le-Lisp - Jerome Chailloux and Emmanuel St James, INRIA, France.  A LISP
dialect close to Common Lisp, lexically scoped, with a CLOS-like object
system.  Uses both packages and modules.  "le-lisp: A Portable and
Efficient Lisp System", J. Chailloux et al, Proc 1984 ACM Symp on Lisp and
Functional Programming, ACM.  Version v.16, available from ILOG, France.

Leo - General-purpose systems language, syntactically like Pascal and Y,
semantically like C.  "The Leo Programming Language", G. Townsend, CS TR
84-7, U Arizona 1984.

Lex  -

  1. Input language to the Lex scanner generator.  "Lex - A Lexical
Analyzer Generator", M.E. Lesk, CS TR 39, Bell Labs (Oct 1975).  (See
  ML-lex - Implementation and output in SML/NJ.

  2. Lexical specification language for COPS.  "Metalanguages of the
Compiler Production System COPS", J. Borowiec, in GI Fachgesprach
"Compiler-Compiler", ed W. Henhapl, Tech Hochs Darmstadt 1978, pp.122-159.

LG - Simple language for analytic geometry, with graphic output.  "LG: A
Language for Analytic Geometry", J. Reymond, CACM 12(8) (Aug 1969). [???]

LGDF - Large-Grain DataFlow.  "A Large-grain Data Flow Scheduler for
Parallel Processing on {*filter*}plus", R.G. Babb et al, Proc 1986 Intl Conf on
Paralllel Proc, Aug 1986.

LGEN - Bell Labs.  A logic language for VLSI implementation.  S.C. Johnson,
"Code Generation for Silicon", Proc 10th POPL, 1983.

LGN - Linear Graph Notation.  A linearized representation of TCOL trees.
B.W. Leverett et al, "An Overview of the Production Quality Compiler-
Compiler Projects", TR CMU-CS-79-105, Carnegie Mellon 1979.  (See TCOL)

Liana - 1991.  Similar to C++, aimed at Windows applications.  No pointers,
no multiple inheritance.  Garbage collection.  "The Liana Programming
Language", R. Valdes, Dr Dobbs J Oct 1993, pp.50-52.  Base Tech, 1320 Peral
St, Boulder CO.

LIDO - Input language for the attribute evaluator generator LIGA (a
successor of{*filter*}and a subsystem of the Eli compiler-compiler).  LIDO is
derived from GAG's input language ALADIN.  "LIDO: A Specification Language

Paderborn (Oct 1989).

LiE - Symbolic math aimed at Lie groups.  "LiE, a Package for Lie Group
Computations", M.A.A. van Leeuwen et al, in Computer Algebra Nederland,
1992 (ISBN 90-741160-02-7).

LIFE - Logic of Inheritance, Functions and Equations.  Hassan Ait-Kacy

and constraint-based.  Integration of ideas from LOGIN and LeFun.  "Is
There a Meaning to LIFE?", H. Ait-Kacy et al, Intl Conf on Logic Prog,
1991. - Wild_LIFE interpreter from
Paradise project at DEC's Paris Research Lab

language used for implementation of Actor languages.  [Plasma perhaps?]

LIMDEP - Linear programming language used by economists.

LIMP - "Messages in Typed Languages", J. Hunt et al, SIGPLAN Notices
14(1):27-45 (Jan 1979).

Linc - Burroughs/Unisys 4GL.  Designed in New Zealand.

Lincoln Reckoner - ca 1965.  Interactive math including matrix operations,
on TX-2.  "The Lincoln Reckonere: An Operation-Oriented On-line Facility
with Distributed Control", A.N. Stowe et al, Proc FJCC 29 (1966).  Sammet
1969, pp.245-247.

Linda - Yale.  A "coordination language", providing a model for concurrency
with communication via a shared tuple space.  Usually implemented as a
subroutine library for a specific base language.  "Generative Communication

32(4):444-458 (Apr 1989).  (See C-Linda, Ease, fortran-Linda, LindaLISP,
Lucinda, Melinda, Prolog-Linda).

LindaLISP - Yep, you guessed it.

Lingo - An animation scripting language.  MacroMind Director V3.0
Interactivity Manual, MacroMind 1991.

LINGOL - LINguistics Oriented Language.  Natural language processing.  "A
Linguistics Oriented Programming Language", V.R. Pratt, Third Intl Joint
Conf on AI, 1973.

LIPL - Linear IPL.  A linearized (i.e. horizontal format) version of IPL-V.
Sammet 1969, p.394.  R. Dupchak, "LIPL - Linear Information Processing
Language", Rand Memo RM-4320-PR, Feb 1965.

LIS - Langage Implementation Systeme.  Ichbiah, 1973.  A predecessor of
Ada, influenced by Pascal's data structures and Sue's control structures.
A type declaration may have a low-level implementation specification.  "The
System Implementation Language LIS", J.D. Ichbiah et al, CII
Honeywell-Bull, TR 4549 E/EN, Louveciennes France (Dec 1974).  "The Two-
Level Approach to Data Independent Programming in LIS", J.D. Ichbiah et al,
in Machine Oriented Higher Level Languages, W. van der Poel ed, N-H 1974,

LISA - Statistical data analysis.  Similar to S.

late 50's.  Symbolic functional recursive language based on lambda-
calculus, used especially for AI and symbolic math.  Many dialects.  Atoms
and lists.  Dynamic scope.  Both programs and data are represented as list
structures.  Versions include LISP 1 (Original version), LISP 1.5 (MIT
1959), LISP 1.75, LISP 1.9.

LISP 2 - LISP 1.5 with an ALGOL60-like surface syntax.  Also optional type
declarations, new data types including integer-indexed arrays and character
strings, partial-word extraction/insertion operators and macros.  A
pattern-matching facility similar to COMIT was proposed.  Implemented for
the Q-32 computer.  "The LISP 2 Programming Language and System", P.W.
Abrahams et al, Proc FJCC 29:661-676, AFIPS (Fall 1966).

LISP70 - LISP dialect, a descendant of MLISP and MLISP2.  Also known as
PLISP and VEL.  Useful for parsing.  Only the pattern-matching system was
published and fully implemented.  According to Alan Kay, LISP70 had an
influence on Smalltalk-72.  "The LISP70 Pattern Matching System, Larry
Tesler et al, IJCAI 73.

LISP A - "LISP A: A LISP-like System for Incremental Computing", E.J.
Sandewall, Proc SJCC 32 (1968).

Lispkit Lisp - Purely functional version of LISP.  "Functional Programming,
Application and Implementation", P. Henderson, P-H 1980.

Lisp-Linda - P. Dourish, U Edinburgh 1988.

LISP Machine LISP - An extension of Maclisp, now called Zetalisp.

Lisptalk - "Concurrent Programming Language Lisptalk", C. Li, SIGPLAN
Notices 23(4):71-80 (Apr 1988).

LITHE - Object-oriented with extensible syntax.  "LITHE: A Language
Combining a Flexible Syntax and Classes", D. Sandberg, Conf Rec 9th Ann ACM
Sym POPL, ACM 1982, pp.142-145.

LITTLE - Typeless language used to produce machine-independent software.
LITTLE has been used to implement SETL.  "Guide to the LITTLE Language", D.
Shields, LITTLE Newsletter 33, Courant Inst (Aug 1977).

Little Smalltalk - A line-oriented near-subset of Smalltalk-80.  "A Little
Smalltalk", Timothy Budd, A-W 1987., source in C.

LLM3 - J. Chailloux.  Assembly language for a virtual machine, the
implementation language for Le-Lisp.

LM3 - The Larch interface language for Modula-3.  (See Larch).  "LM3: A
Larch/Modula-3 Interface Language", Kevin D. Jones, TR 72, DEC SRC, Palo
Alto CA.


  1. Chalmers U Tech, Gothenburg, Sweden.  Lazy, completely functional
variant of ML[2].  Implemented on the G-machine, and used to implement the
Haskell B compiler.*

  2. Logical ML.  Adds to Lazy ML a data type of 'theories' whose objects
represent logic programs.  "Logic Programming within a Functional
Framework", A. Brogi et al, in Programming Language Implementation and
Logic Programming, P. Deransart et al eds, LNCS 456, Springer 1990.

LNF - "A Fully Lazy Higher Order Purely Functional Programming Language
With Reduction Semantics", K.L. Greene, CASE Center TR 8503, Syracuse U

L&O - Logic and Objects.  Implemented as a front end for IC Prolog.  "Logic
and Objects", Frank McCabe, P-H.

LO - Linear Objects.  Concurrent logic programming language based on
"linear logic", an extension of Horn logic with a new kind of OR-
concurrency.  "LO and Behold! Concurrent Structured Processes", J. Andreoli
et al, SIGPLAN Notices 25(10):44-56 (OOPSLA/ECOOP '90) (Oct 1990).

{log} - "{log}: A Logic Programming Language with Finite Sets", A Dovier et
al, Proc 8th Intl Conf Logic Prog, June 1991, pp.111-124.

LogC - C extension ncorporating rule-oriented programming, for AI
applications.  Production rules are encapsulated into functional components
called rulesets.  Uses a search network algorithm similar to RETE.  "LogC:
A Language and Environment for Embedded Rule Based Systems", F. Yulin et
al, SIGPLAN Notices 27(11):27-32 (Nov 1992).  Version: LogC 1.6.

Logic Design Language - Language for computer design.  "A System
Description Language Using Parametric Text Generation", R.H. Williams, TR
02.487, IBM San Jose, Aug 1970.

LOGIN - Integration of logic programming and inheritance.  "LOGIN: A Logic
Programming Language with Built-In Inheritance", H. Ait-Kaci et al, J Logic
Programming 3(3):185-215 (1986).

LOGLAN - Inst Informatics, Warsaw U.  Object-oriented.  "LOGLAN '88 -
Report on the Programming Language", LNCS 414, Springer, ISBN 3-540-52325-

LOGLISP - Robertson & Sibert, Syracuse 1980.  A Prolog-like language called
LOGIC, embedded in LISP.  "LOGLISP: An Alternative to Prolog", J. Alan
Robinson et al in Machine Intelligence 10, D. Michie ed, Ellis Horwood

LOGO - Developed 1966-1968 by a group at Bolt, Beranek & Newman headed by

beginning programmers, noted for its "turtle graphics" used to draw
geometric shapes.*   Logo interpreters for Mac,
Unix, PC, X

LOGOL - Strings are stored on cyclic lists or 'tapes', which are operated
upon by finite automata.  J. Mysior et al, "LOGOL, A String manipulation
Language", in Symbol Manipulations Languages and Techniques, D.G. Bobrow
ed, N-H 1968, pp.166-177.

{*filter*} - Language for the On-Line Investigation and Transformation of
Abstractions.  Extension of Culler-Fried system for symbolic math.  "An On-
line Symbol Manipulation System", F.W. Blackwell, Proc ACM 22nd Natl Conf
(1967).  Sammet 1969, p.464.

Lolli - (named for the "lollipop" operator "-o")  Based on linear logic, in
which clauses can be used exactly once.  All the operators of lambda-
Prolog plus linear variations.  Implemented in SML/NJ.  Josh Hodas et al,
"Logic Programming in a Fragment of Intuitionistic Linear Logic",
Information and Computation, to appear.

LOM - Toulouse, early 1980's.  Language for data processing.

LOOK - Specification language.  "A Look at Algebraic Specifications", S.N.
Zilles et al, IBM RR, 1982.


  1. "LOOKS: Knowledge-Representation System for Designing Expert Systems
in a Logical Programming Framework", F. Mizoguchi, Proc Intl Conf 5th Gen
Comp Sys, ICOT 1984.

  2. Language for Object-Oriented Kinematics Specifications.  E. Peeters

specifying motion.  "Design and Implementation of an Object-Oriented
Interactive Animation System", Eric Peeters, in Technology of Object-
Oriented Languages and Systems, TOOLS 12 & 9, C. Mingins et al eds, P-H
1993, pp.255-267.

LOOPN - U Tasmania.  An object-oriented language for simulation of Petri

LOOPS - Lisp Object-Oriented Programming System.  Xerox's object-oriented
LISP extension, used in development of knowledge-based systems.  "The LOOPS
Manual", D.G. Bobrow & M. Stefik, Xerox Corp 1983.  (See CommonLoops).

LOP - Language based on first-order logic.  "SETHEO - A High-Perormance
Theorem Prover for First-Order Logic", Reinhold Letz et al, J Automated
Reasoning 8(2):183-212 (1992).

Lore -

  1. Object-oriented language for knowledge representation.  "Etude et
Realisation d'un Language Objet: LORE", Y. Caseau, These, Paris-Sud, Nov

  2. CGE, Marcoussis, France.  Set-based language [same as 1?]
info: Christophe Dony <>

LOTIS - LOgic, TIming, Sequencing.  Describes a computer via its data flow.
Sammet 1969, p.620.

LOTOS - Specification language based on temp{*filter*}ordering.  "The Formal
Description Technique LOTOS", P.H.J. van Eijk et al eds, N-H 1989.  ISO
8807 (1990).

document preparation system.  Procedural, with Scribe-like syntax.
    //   for Amiga

Low-Ada - An intermediate language for Ada, intended for formal
verification.  Just a comcept, not yet fully defined or implemented.  "Low-
Ada: an Ada Validation Tool", B.A. Wichmann, Ada User 11(1): pp.27-32.

LOWL - Abstract machine for bootstrapping ML/1.  Mentioned in Machine
Oriented Higher Level Languages, W. van der Poel, N-H 1974, p.271.

LPC - ca 1988.  Variant of C used to program the LP MUDs, programmable
multi-user adventures.


  1. Linguaggio Procedure Grafiche (Italian for "Graphical Procedures
Language").  dott. Gabriele Selmi.  Roughly a cross between FORTRAN and
APL, with graphical-oriented extensions and several peculiarities.
Underlies the products of CAD.LAB Spa.   "Graphical Procedure Language
User's Guide and Reference Manual", CAD.LAB , Bologna, Italy, 1989, order
code GO89/9.

  2. Langage de Programmation Generique.  An applicative language, both
specification and functional.  Special emphasis on parametrized
declarations.  "Design and Implementation of a Generic, Logic and
Functional Programming Language",  D. Bert et al, ESOP 86, LNCS 213,
Springer 1986.

LPL - List Programming Language.  LISP-like language with ALGOL-like
syntax, for IBM 360.  "LPL - LISP Programming Language", F.W. Blair et al,
RC 3062, IBM TJWRC, Sep 1970.

LPS - Sets with restricted universal quantifiers.  "Logic Programming with
Sets", G. Kuper, J Computer Sys Sci 41:44-64 (1990).

LRLTRAN - Lawrence Radiation Laboratory TRANslator.  FORTRAN extension with
vector arithmetic and dynamic storage, used for scientific work and systems
programming, including the LTSS OS.  "The LRLTRAN Compiler", S.F.
Mendicino, CACM 11(11):747-775 (Nov 1969).


  1. Larch Shared Language.  An assertion language.  (See Larch).

  2. Link and Selector Language.  Graphic query language.  "LSL: A Link and
Selector Language", D.C. Tsichritzis, Proc Intl Conf Management of Data,
ACM 1976, pp.123-134.

LSYD - Language for SYstems Development.  PL/I-like language with data
structure and character extensions.  "Systems Programming Languages", R.D.
Bergeron et al, in Advances in Computers 1971, A-P.

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

LTR - Langage Temps-Reel.  A French predecessor to Ada, Modula-like with a
set of special-purpose real-time constructs based on an event model.
Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac & Exp 10:851-
887 (1980).

LTR2 -

LTR3 - Parayre, France.  Saw wide use by French military and avionics.
"The LTR3 Reference Manual", A. Parayre, Delegation Generale pour
l'Armement, France.

Lua - TeCGraf, Cath U Rio de Janeiro, 1994.  Pascal-like, functions can
have variable number of arguments and return multiple values.  Implemented
in C, bytecode interpreted.


  1. Early query language, ca. 1965, System Development Corp, Santa Monica,
CA.  Sammet 1969, p.701.

descended from ISWIM, lazy but first-order.  Statements are regarded as
equations defining a network of processors and communication lines, through
which the data flows.   Every data object is thought of as an infinite
stream of simple values, every function as a filter.  Lucid has no data
constructors such as arrays or records.  Iteration is simulated with 'is
current' and 'fby' (concatenation of sequences).  "Lucid, the Dataflow
Programming Language", W. Wadge, Academic Press 1985.

Lucinda - Combines Russell-like polymorphism with Linda-like concurrency.
Implemented as a threaded interpreter written in C, for a Sun network and a
Meiko Computing Surface.  "Lucinda - An Overview", P. Butcher, U York

Lucy - Distributed constraint programming language.  An actor subset of
Janus.  "Actors as a Special Case of Concurrent Constraint Programming", K.

ECOOP '90) (Oct 1990).

LUKKO - Heinanen, 1983.  An object-oriented microprogramming language,
influenced by Alphard and Modula.  "A Data and Control Abstraction Approach
to Microprogramming", J. Heinanen, Publ 18, Tampere U of Tech, Tampere,
Finland, 1983.

LUSTRE - Real-time dataflow language for synchronous systems, especially
automatic control and signal processing.  A Lucid subset, plus timing
operators and user-defined clocks.  "Outline of a Real-Time Data-Flow
Language", J.-L. Bergerand et al, Proc IEE-CS Real Time Systems Symp, San
Diego, IEEE Dec 1985, pp.33-42.  "LUSTRE: A Declarative Language for
Programming Synchronous Systems", P. Caspi et al, Conf Rec 14th Ann ACM
Symp on Princ Prog Langs, 1987.

LYaPAS - (Russian acronym for "Logical Language for the Representation of
Synthesis Algorithms").  For the URAL-1 computer.  Coded in octal!
"LYaPAS: A Programming Language for Logic and Coding Algorithms", M.A.
Gavrilov et al eds, Academic Press 1969.

LYNX - U Wisc 1984.  Language for large distributed networks, using remote
procedure calls.  "The Lynx Distributed Programming Language: Motivation,
Design and Experience", M.L. Scott, Computer Langs 16:209-233 (1991).

LYRIC - Language for Your Remote Instruction by Computer.  CAI language
implemented as a FORTRAN preprocessor.  "Computer Assisted Instruction:
Specification of Attributes for CAI Programs and Programmers", G.M. Silvern
et al, Proc ACM 21st Natl Conf (1966).

M -

  1. Alternative name for MUMPS.

  2. Silicon Compiler Systems.  A C-like language for multilevel hardware
description.  Currently available in the GDT package from Mentor Graphics.

M3 - Macro processor, forerunner of M4, for the AP-3 mini.

M4 - Macro processor for Unix and GCOS.  "The M4 Macro Processor",
Kernighan & Ritchie, Jul 1977.

M5 - A. Dain, U Cincinnati 1992.  Macro processor, a generalization of M4.
For Unix and DOS.

MAC - Early system on Ferranti Mercury.  Listed in CACM 2(5):16 (May 1959).

Mac-1 - Assembly language used in Structured Computer Organization, A.S.
Tanenbaum, 3rd Edition, P-H 1989, Sect. 4.3.  [See Mic-1]

MAC-360 - ca. 1967.  Solving numerical problems using equation-like input.
"User's Guide to MAC-360", Charles Stark Draper Lab, Cambridge MA (Aug
1973)  Sammet 1969, p.264.

algebra, algebraic geometry, cohomology., Version 3 for Sun, Mac and Amiga, source in C

MACE - Concurrent object-oriented language.[?]

Machiavelli - Peter Buneman & Atsushi Ohori, U Pennsylvania, 1989.  An
extension of Standard ML based on orthogonal persistence.  "Database
Programming in Machiavelli: A Polymorphic Language with Static Type
Inference", A. Ohori, Proc SIGMOD Conf, ACM, June 1989.

MACL - Macintosh Allegro CL.  Former name of MCL.

MacLisp - MIT AI Lab, late 1960's.  Later used by Project MAC, Mathlab, and
Macsyma.  Ran on the PDP-10.  Introduced the LEXPR (a function with
variable arity), macros, arrays, and CATCH/THROW.  Was once one of two main
branches of LISP (the other being Interlisp).  In 1981 Common LISP was
begun in an effort to combine the best features of both.  "MACLISP

MIT 1974.


  1. Assembly language for VAX/VMS.

  2. PL/I-like language with extensions for string processing.  "MACRO: A
Programming Language", S.R. Greenwood, SIGPLAN Notices 14(9):80-91 (Sep

Macro SAP - Macro processing modification of SAP.  D.E. Eastwood and D.M.
McIlroy, unpublished memorandum, Bell Labs 1959.  Led to TRAC.

MACSYMA - Project MAC's SYmbolic MAnipulator.  Joel Moses

comprehensive symbolic math system, written in LISP. "MACSYMA - The Fifth
Year", J. Moses, SIGSAM Bulletin 8(3) (Aug 1974).  Versions: Symbolics
Macsyma, DOE Maxima (ANL), Vaxima.   DOE Maxima in Common


  1. Michigan Algorithm Decoder.  Developed at U Michigan by R. Graham,

709 and 7090, later ported to Philco, Univac and CDC machines.  MAD was one
of the first extensible languages: the user could define his own operators
and data types.  "Michigan Algorithm Decoder (The MAD Manual)", U Michigan
Computing Center, 1966.  Sammet 1969, p.205.

  2. Dataflow language.  "Implementation of Data Structures on a Data Flow
Computer", D.L. Bowen, Ph.D. Thesis, Victoria U Manchester, Apr 1981.

Mad/1 - A later, much enhanced version of MAD, for the IBM 360.  Michigan's
answer to PL/I.

MADCAP - Math and set problems, for the Maniac II and CDC 6600.  "MADCAP -
A Scientific Compiler for a Displayed Formula Texbook Language", M.B.
Wells, CACM 4(1):31-36 (Jan 1961).  Sammet 1969, pp.271-281.  Versions:
Madcap 5 (1964), Madcap 6.  "The Unified Data Structure Capability in
Madcap 6", M.B. Wells et al, Intl J Comp Info Sci 1(3) (sep 1972).

MADTRAN - Early preprocessor that translated FORTRAN to MAD, for gain in

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

Magic Paper - Early interactive symbolic math system.  Sammet 1969, p.510.

Magma2 - Language that allows programmability of the control environment,
e.g. recursion, backtracking, coroutines, nondeterminism, etc.  "Magma2: A
Language Oriented Toward Experiments in Control", Franco Turini, ACM TOPLAS
6(4):468-486 (Oct 1984).

MagmaLISP - Predecessor of Magma2.  "MagmaLISP: A Machine Language for
Artificial Intelligence", C. Mantagero et al, Proc 4th Intl Joint Conf
Artif Intell, 1975, pp.556-561.

MAGNUM - Tymshare Inc, late 70's.  Database language for DEC-10's, used
internally by Tymshare.

Magritte - J. Gosling.  Constraint language for interactive graphical
layout.  Solves its constraints using algebraic transformations.
"Algebraic Constraints", J. Gosling, PhD Thesis, TR CS-83-132, CMU, May

MAINSAIL - MAchine INdependent SAIL.  From XIDAK, Palo Alto CA, (415) 855-

Maisie - A C extension with concurrency via asynchronous typed message
passing and lihtweight processes.

Make - Language for the Unix file maintenance utility Make.  "Make - A
Program for Maintaining Computer Programs", A.I. Feldman, TR No 57, Bell
Labs Apr 1977.

MAL - Micro Assembly Language - Microprogramming language with high-level
syntax, used in Structured Computer Organization, A.S. Tanenbaum, 3rd ed,
P-H 1989, Sect 4.4.  [See Mic-1, Mac-1].

MALPAS IL - TA Consultancy Services.  A strongly typed, block-structured
intermediate language intended for static analysis and verification.
Translators exist for Ada, C, Pascal, Fortran 77, C{*filter*}66 and several
assembly languages.  "Code Verification with the Aid of MALPAS", N.J. Ward,
Proc IEE Colloq of High Integrity Ada (Jan 1993).

Manchester Autocode - Predecessor of Mercury Autocode.  "The Programming
Strategy Used with the Manchester University Mark I Computer", R.A.
Brooker, Proc IEE 103B Suppl:151-157, 1956.

Mandala - ICOT, Japan.  A system based on Concurrent Prolog.  "Mandala: A
Logic Based Knowledge Programming System", K. Furukawa et al, Intl Conf 5th
Gen Comp Sys 1984.

MAO - Early symbolic math system.  A. Rom, Celest Mech 1:309-319 (1969).

MAP - Mathematical Analysis without Programming.  On-line system under CTSS
for math.  Sammet 1969, p.240.

Maple - B. Char, K. Geddes, G. Gonnet, M. Monagan & S. Watt, U Waterloo,
Canada 1980.  Symbolic math system.  Waterloo Maple Software.  Current
version: Maple V.

MARBLE - A Pascal-like microprogramming language.  "MARBLE: A High Level
Machine-Independent Language for Microprogramming", S. Davidson et al, in
Firmware, Microprogramming and Restructureable Hardware, G. Chroust et al
eds, N-H 1980, pp.253-263.

Maril - Machine description language used by the Marion code generator.
"The Marion System for Retargetable Instruction Scheduling", D.G. Bradlee
et al, SIGPLAN Notices 26(6):229-240 (June 1991).

Markov - [?]

Marseille Prolog - One of the two main dialects of Prolog, the other being
Edinburgh Prolog.  The difference is largely syntax.  The original
Marseille Interpreter (1973) was written in FORTRAN.

MARSYAS - MARshall SYstem for Aerospace Simulation.  Simulation of large
physical systems.  "MARSYAS - A Software System for the Digital Simulation
of Physical Systems", H. Trauboth et al, Proc SJCC, 36 (1970).

MARVIN - U Dortmund, 1984.  Applicative language based on Modula-2,
enhanced by signatures (grammars) terms (trees) and attribute couplings
(functions on trees).  Used for specification of language translators.
"MARVIN - A Tool for Applicative and Modular Compiler Specification", H.
Ganziger et al, Forsch 220, U DOrtmund, Jul 1986.

Mary - Mark Rain.  Machine-oriented language, a supeset of ALGOL68,
extensible.  Hidden on the back cover of the manual: MARY HAD A LITTLE LAMB
- COERCION IMPOSSIBLE.  "Mary Programmer's Reference Manual", M. Rain et
al, R Unit, Trondheim Norway, 1974.  "Operator Expressions in Mary", M.
Rain, SIGPLAN Notices 8(1) (Jan 1973).

MAS - Modula-2 Algebra System.  "Modula-2 Algebra System", H. Kredel, Proc
DISCO 90 Capri, LNCS 429, Springer 1990, pp270-271., for PC, Atari, Amiga

MASM - Microsoft Assembler for MS-DOS.

Massey Hope - Massey U, NZ.  Refinement of Hope+C with improved syntax, and
no stream I/O.

Matchmaker - A language for specifying and automating the generation of
multi-lingual interprocess communication interfaces.  MIG is an
implementation of a subset of Matchmaker that generates C and C++ remote
procedure call interfaces for interprocess communication between Mach
tasks.  "MIG - The Mach Interface Generator", R.P. Draves et al, CS CMU, (4
Aug 1989).

Mathcad - Symbolic math environment.

Mathematica - (name suggested by Steve Jobs).  Wolfram Research, 1988.
Symbolic math and graphics system.  The language emphasizes rules and
pattern-matching.  "Mathematica: A System for Doing Mathematics by
Computer", Stephen Wolfram, A-W 1988., //

MATHLAB - Symbolic math system, MITRE, 1964.  Later version: MATHLAB 68
(PDP-6, 1967).  "The Legacy of MATHLAB 68", C. Engelman, Proc 2nd Symp on
Symbolic and Algebraic Manip, ACM (Mar 1971).  Sammet 1969, p.498.

MATH-MATIC or MATHMATIC - Alternate name for AT-3.  Early, pre-FORTRAN
language for UNIVAC I or II.  Sammet 1969.

Matrix Compiler - Early matrix computations on UNIVAC.  Sammet 1969, p.642.

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

nawk, distributed under GNU license but distinct from GNU's gawk.

MAXIMOP - "Job Control Languages: MAXIMOP and CAFE", J. Brandon, Proc BCS
Symp on Job Control Languages--Past Present and Future, NCC, Manchester,
ENgland 1974.

MBASIC - Microsoft BASIC.

MC - Extension of C with modules.  Symbols in other modules can be
referenced using a dot notation.  "Design and Implementation of a C-Based
Language for Distributed Real-Time Systems", A. Rizk et al, SIGPLAN Notices
22(6):83-96 (June 1987).

McG360 - Interactive, similar to PAL[5], for IBM 360.  "McG360 Programmer's
Guide", RC 2693, IBM TJWRC, Nov 1969.

MCL - Macintosh Common LISP.  (Previously MACL.)

M-Code -

 1) Intermediate code produced by the original ETH Modula-2 compiler.

 2) Intermediate language for an SECD-like machine, used by the Concert
implementation of MultiLISP.

MCS - Meta Class System.  A portable object-oriented extension of Common

MDL - (originally "Muddle").  C. Reeve, C. Hewitt & G. Sussman, Dynamic
Modeling Group, MIT ca. 1971.  Intended as a successor to Lisp, and a
possible base for Planner-70.  Basically LISP 1.5 with data types and
arrays.  Many of its features were advanced at the time (I/O, interrupt
handling and coroutining), and were incorporated into later LISP dialects
("optional", "rest" and "aux" markers).  In the mid 80's there was an
effort to use bytecoding to make the language portable.  CLU was first
implemented in MDL.  Infocom wrote Zork in MDL, and used it as the basis
for the ZIL interpreter.  "The MDL Programming Language", S.W. Galley et
al, Doc SYS.11.01, Project MAC, MIT (Nov 1975).  Implementations exist for
ITS, TOPS-20, BSD 4.3, Apollo Domain, SunOS and A/UX.

me too - Peter Henderson, 1984.  Functional language for executable
specifications.  Like LispKit Lisp, but with sets, maps and sequences to
describe the specification.  "Functional Programming, Formal Specification
and Rapid Prototyping", IEEE Trans Soft Eng, SE-12(2):241-250 (Feb 1986).

MELD - Concurrent, object-oriented, dataflow, modular and fault-tolerant!
Comparable to SR.  "MELDing Multiple Granularities of Parallelism", G.
Kaiser et al, ECOOP '89, pp.147-166, Cambridge U Press 1989.

MeldC - Columbia U, 1990.  A C-based concurrent object-oriented
coordination language built on a reflective architecture.  A redesign of
MELD.  Version 2.0 for Sun4's and DECstations.

Melinda - "Melinda: Linda with Multiple Tuple Spaces", S. Hupfer,

Mentat - U {*filter*}ia.  Object-oriented distributed language, an extension of
C++, portable to a variety of MIMD architectures.  "Mentat: An Object-

al, SIGPLAN Notices 22(12):35-47 (Dec 1987) (OOPSLA '87).  Available now
for Sun 3 & 4 and iPSC/2, and soon Mach, iPSC860, RS/6000 and Iris.

MENTOR - CAI language.  "Computer Systems for Teaching Complex Concepts",
Report 1742, BBN, Mar 1969.

MENYMA/S - "A Message Oriented Language for System Applications", A. Koch
et al, Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp.824-832.

Mercury Autocode - Autocode for the Ferranti Mercury machine.  (See

MEROON - An object-oriented system built on Scheme.*

Mesa - Xerox PARC, 1977.  System and application programming for
proprietary hardware: Alto, Dolphin, Dorado and Dandelion.  Pascal-like
syntax, Algol68-like semantics.  An early version was weakly typed.  Mesa's
modules with separately compilable definition and implementation parts
directly led to Wirth's design for Modula.  Threads, coroutines
(fork/join), exceptions, and monitors.  Type checking may be disabled.
Mesa was used internally by Xerox to develop ViewPoint, the Xerox Star,
MDE, and the controller of a high-end copier.  It was released to a few
universitites in 1985.  Succeeded by Cedar.  "Mesa Language Manual", J.G.
Mitchell et al, Xerox PARC, CSL-79-3 (Apr 1979).  "Early Experience with
Mesa", Geschke et al, CACM 20(8):540-552 (Aug 1977).

META - CDC, ca 1977.  Assembly language for the {*filter*} 200.  CDC Pub

META 5 - Early syntax-directed compiler-compiler, used for translating one
high-level language to another.  "META 5: A Tool to Manipulate Strings of
Data", D.K. Oppenheim et al, Proc 21st Natl Conf, ACM 1966.  Sammet 1969,
p.638.  Versions: META II, META-3.

Meta-II - An early compiler-compiler.  "Meta-II: a Syntax Oriented Compiler
Writing Language", V. Schorre, Proc 19th ACM Natl Conf 1964.

Meta-IV - See VDM-SL.

Meta-Crystal - A language for transformations of Crystal programs.
Implemented in T.  "Meta-Crystal- A Metalanguage for Parallel-Program
Optimization", J.A. Yang et al, TR YALEU/DCS/TR-786, Yale Apr 1990.  (See

METAFONT - Knuth.  A system for the design of raster-based alphabets.
Companion to TeX.  "The METAFONT Book," Donald Knuth, A-W 1986.  Version
2.0, March 1990.


  1. Mega-Extensive Telecommunications Applications Language.  BBS language
for PRODOS 8 on Apple ][.

  2. The syntax-definition formalism of the Mentor system.  Metal
specifications are compiled to specifications for a scanner/parser
generator such as Lex/Yacc.  "Metal: A Formalism to Specify Formalisms", G.
Kahn et al, Sci Comp Prog 3:151-188 (1983).

many innovations.

Met-English - Metropolitan Life, early 60's.  Fortran-like, with support
for variable-length bit fields.  Most MetLife DP in the 60's and 70's was
in Met-English.  Originally for Honeywell machines, but many programs still
run under IBM/MVS via a Honeywell emulator.

METEOR - A version of COMIT with Lisp-like syntax, written in MIT Lisp 1.5
for the IBM 7090.  "METEOR - A List Interpreter for String Transformation",
D.G. Bobrow in The Programming Language LISP and its Interpretation, E.D.
and D.G. Bobrow eds, 1964.

Methods - Digitalk, ca 1985.  Line-oriented Smalltalk for PC's, predecessor
of Smalltalk/V.


  1. MIMIC Hardware Description Language.

  2. Microwave Hardware Description Language.  Incorporates Haskell 1.2.

Mic-1, Mic-2 - Microprogramming languages, used in Structured Computer
Organization, A.S. Tanenbaum, 3rd ed, P-H 1989, Sect 4.4, 4.5.  [See Mac-

microAPL - An APL-like microprogramming language.  "High Level
Microprogramming with APL Syntax", R.F. Hobson et al, Proc 14th Ann
Workshop Microprogramming (MICRO-14), 1981, pp.131-139.

microPLANNER - G.J. Sussman et al, MIT.  Subset of PLANNER, implemented in
LISP.  Superseded by Conniver.  Important features: goal-oriented, pattern-
directed procedure invocation, embedded knowledge base, automatic
backtracking.  "microPLANNER Reference Manual", G.J. Sussman et al, AI Memo
203, MIT AI Lab, 1970.

microTAL - A high level machine dependent microprogramming language based
on TAL.  Aim was to facilitate migration of TAL functions to microcode.
"microTAL - A Machine-Dependent High-Level Microprogramming Language", J.F.
Bartlett, Proc 14th Ann Workshop Microprogramming (MICRO-14), 1981,
pp.109-114.  (See TAL).

MIDAS - Digital simulation language.  Sammet 1969, p.627.

MIDL - MicroInstruction Description Language.  "MIDL - A Microinstruction
Description Language", M. Sint, Proc 14th Ann Workshop Microprogramming
(MICRO-14), 1981, pp.95-106.

MIIS - ("Meese").  Interpreted.  One-letter keywords.  Similar to MUMPS?

MIKE - Micro Interpreter for Knowledge Engineering.  Expert system shell
for teaching purposes, with forward and backward chaining and user-
definable conflict resolution strategies.  In Edinburgh Prolog.  BYTE Oct
1990.  Version 2.03

MILITRAN - Sys Res Group, ONR 1964.  Discrete simulation for military
applications.  Sammet 1969, p.657.

MIMIC - J.H. Andrews, NIH 1967.  Early language for solving engineering
problems such as differential equations that would otherwise have been done
on an analog computer.  "MIMIC, An Alternative Programming Language for
Industrial Dynamics, N.D. Peterson, Socio-Econ Plan Sci. 6, Pergamon 1972.

MIMOLA - Operational hardware specification language.  "A Retargetable
Compiler for a High-Level Microprogramming Language", 17th Ann Workshop on
Microprogramming, P. Marwedel, IEEE 1984, pp.267-274.

Mini-ML - "A Simple Applicative Language: Mini-ML", D. Clement et al, Proc
1986 ACM Conf on LISP and Functional Prog, (Aug 1986).

Mini PL/I - A commercial PL/I subset for the Olivetti Audit 7 minicomputer.

MINITAB II - Interactive solution of small statistical problems.  "MINITAB
Student Handbook", T.A. Ryan et al, Duxbury Press 1976.

MINT - Mint Is Not TRAC.  Version of TRAC used as the extension language in
the Freemacs editor.

subset of Miranda, no modules or files.  Can be interactively switched
between eager and lazy evaluation.  Portable source in C from the author.

Miranda - (latin for "admirable", also the {*filter*}e of Shakespeare's

purely functional.  A commercial descendant of SASL and KRC, with ML's type
system.  Terse syntax using the offside rule for indentation.  Type
declarations are optional.  Nested pattern-matching, list comprehensions,
modules.  Sections rather than lambda abstractions.  User types are
algebraic, may be constrained by laws.  Implemented by SKI reduction.  The
KAOS operating system is written entirely in Miranda.  "Miranda: A Non
Strict Functional Language with Polymorphic Types", D.A. Turner, in
Functional Programming Languages and Computer Architecture, LNCS 201,
--Bill Kinnersley

226 Transfer complete.

Tue, 18 Feb 1997 20:16:13 GMT  
 [ 1 post ] 

 Relevant Pages 

1. The Language List - Version 2.3 (Part 11 of 11)

2. The Language List - Version 2.3 (Part 8 of 11)

3. The Language List - Version 2.3 (Part 5 of 11)

4. The Language List - Version 2.3 (Part 4 of 11)

5. The Language List - Version 2.3 (Part 3 of 11)

6. The Language List - Version 2.3 (Part 2 of 11)

7. The Language List - Version 2.3 (Part 9 of 11)

8. The Language List - Version 2.3 (Part 1 of 11)

9. The Language List Version 2.2 (Part 11 of 11)

10. The Language List - Version 2.4 (Part 1 of 11)


Powered by phpBB® Forum Software