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

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.

LEDA - Combines imperative, object-oriented, and logic programming
language.  Tim Budd, Oregon State U. <budd@cs.orst.edu>.

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
1974.

Le-Lisp - Jerome Chailloux and Emmanuel St James, INRIA, France.  A LISP
dialect.  "le-lisp: A Portable and Efficient Lisp System", J. Chailloux et
al, Proc 1984 ACM Symp on Lisp and Functional Programming, ACM.

Lex  - Input language to the Lex scanner generator.  "Lex - A Lexical
Analyzer Generator", M.E. Lesk, CS TR 39, Bell Labs (Oct 1975).

LG - Simple language for analyic 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 Cyberplus", R.G. Babb et al, Proc 1986 Intl Conf on
Paralllel Proc, Aug 1986.

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)

LIDO - Input language for the attribute evaluator generator LIGA (a
successor of GAG and a subsystem of the Eli compiler-compiler).  LIDO is
derived from GAG's input language ALADIN.  "LIDO: A Specification Language
for Attribute Grammars", U. Kastens, Fab Math-Inf, U Paderborn (Oct 1989).

LIFE - Logic of Inheritance, Functions and Equations.  Hassan Ait-Kacy
<hak@prl.dec.com> et al, MCC, Austin, 1987.  Integration of ideas from
LOGIN and LeFun.  "Is There a Meaning to LIFE?", H. Ait-Kacy et al, Intl
Conf on Logic Prog, 1991.

Lila - Patrick Salle'<salle@geocub.greco-prog.fr>.  A small assembly-like
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
in Linda", D. Gelernter <gelernter@cs.yale.edu> ACM TOPLAS 7(1):80-112
(1985).  "Linda in Context", N. Carreiro <carreiro@cs.yale.edu> et al, CACM
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.  Dupchak, ca. 1965.  Sammet 1969, p.394.

LIS - "The System Implementation Language LIS", J.D. Ichbiah, CII, France
(Dec 1974).

LISA - Statistical data analysis.  Similar to S.
ftp: dolphin.mit.edu.

LISP - LISt Processing.  John McCarthy et al, MIT 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.  "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 - Zetalisp.

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

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.
ftp: cs.orst.edu, source in C.

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

LM-Prolog - Lisp Machine Prolog.  K. Kahn et al, 1983.  "LM-Prolog User
Manual", M. Carlsson et al, Uppsala Dec 1983.
ftp: sics.se: archive/lm-prolog.tar.Z - Prolog interpreter in Zetalisp

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.

LML - 

  1. Lazy, completely functional variant of ML[2].  Implemented on the G-
machine.  Chalmers U Tech, Goteborg, Sweden.
ftp: piggy.cs.chalmers.se

  2. Logical ML.  Adds to Lazy ML a data type of 'theories' whose objects
represent loic 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
1985.

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).

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-
1.

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
1982.

Logo - Seymour Papert <seymour@media-lab.media.mit.edu> et al, 1966-1968 at
Bolt, Beranek & Newman, further developed at MIT's AI Lab.  LISP-like
language aimed at children and other beginning programmers.  Noted for its
"turtle graphics" used to draw geometric shapes.
ftp: Comp.sources.unix/Volume10: Unix Logo interpreter in C

LOLITA - 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.

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

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

LOOPS - Object-oriented LISP extension, used in development of knowledge-
based systems.  "The LOOPS Manual", D.G. Bobrow & M. Stefik, Xerox Corp
1983.  (see CommonLoops).

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

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

LOTOS - Specification language based on temporal ordering.  "The Formal
Description Technique LOTOS", P.H.J. van Eijk et al eds, N-H 1989.

Lout - J. Kingson <jeff@cs.su.oz.au>  The language embedded in the document
preparation system lout.
ftp: uunet.uu.net:tmp/lout.tar.Z

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

LPG - 

  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.

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).

LSL - 

  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.

LUCID -

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

  2. Ashcroft & Wadge <wwadge@csr.uvic.ca>, 1981.  A dataflow language
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
<paulb@minster.york.ac.uk> et al, SIGPLAN Notices 26(8):90-100 (Aug 1991).

Lucy - Distributed constraint programming language.  An actor subset of
Janus.  "Actors as a Special Case of Concurrent Constraint Programming", K.
Kahn <kahn@parc.xerox.com> et al, SIGPLAN Notices 25(10):57-66 (OOPSLA/
ECOOP '90) (Oct 1990).

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.

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).

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.
ftp: prep.ai.mit.edu:pub/gnu/m4-1.0.tar.Z

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

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.

Macaulay - Mike Stillman <mike@mssun7.msi.cornell.edu> and Dave Bayer
<bayer@cunixa.columbia.edu> 1977.  Symbolic math package for commutative
algebra, algebraic geometry, cohomology.
ftp: zariski.harvard.edu, Version 3 for Sun, Mac and Amiga, source in C

MACE - Concurrent object-oriented langugage?

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.
list: info-macl@cambridge.apple.com

MACLISP - Project MAC.  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 Reference Manual", D.A. Moon
<moon@cambridge.apple.com>, TR Project MAC, MIT 1974.

MACRO - 

  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
1979).

MACSYMA - Project MAC's SYmbolic MAnipulator.  Joel Moses
<moses@larch.lcs.mit.edu> MIT 1969, later Symbolics, Inc.  The first
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.
info: macsyma-service@symbolics.com
ftp: rascal.ics.utexas.edu:pub/maxima-4-155.tar.Z   DOE Maxima in Common
LISP

MAD - 

  1. Michigan Algorithm Decoder.  Developed at U Michigan by R. Graham,
Bruce Arden <arden@hopper.ee.rochester.edu> and Bernard Galler
<Bernard_A._Galler@um.cc.umich.edu>, 1959.  Based on IAL.  For the IBM 704,
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.

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.

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

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 interadctive graphical
layout.  Solves its constraints using algebraic transformations. 
"Algebraic Constraints", J. Gosling, PhD Thesis, TR CS-83-132, CMU, May
1983.

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

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.

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.
info: wmsi@daisy.waterloo.edu
list: glabahn@daisy.waterloo.edu

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).

MARY - Norwegian research language, somewhat ALGOL68-like.  No operator
precedence.  The back cover of the manual bears the (well-hidden) fragment:
MARY HAD A LITTLE LAMB - COERCION IMPOSSIBLE.

MAS - Modula-2 Algebra System.  "Modula-2 Algebra System", H. Kredel, Proc
DISCO 90 Capri, LNCS 429, Springer 1990, pp270-271.
ftp: alice.fmi.uni-passau.de, for PC, Atari, Amiga

MASM - Microsoft Assembler for MS-DOS.

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.
ftp: otter.stanford.edu, ftp.ncsa.uiuc.edu
list: mathgroup-request@yoda.ncsa.uiuc.edu
info: info@wri.com

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
1959).

mawk - Mike Brennan <brennan@bcsaic.boeing.com> 1991.  An implementation of
nawk, distributed under GNU license but distinct from GNU's gawk.
ftp: oxy.edu:public/mawk

MBASIC - Microsoft BASIC.

MC - "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.

M-Code - Intermediate code produced by the Modula-2 compiler. [which one?]

MCS - Meta Class System.  A portable object-oriented extension of Common
LISP.
ftp: gmdzi.gmd.de:pub/lisp/mcs

MDL - (originally "Muddle").   C. Reeve, C. Hewitt & G. Sussman, MIT ca.
1971.  Basically LISP 1.5 with data types and arrays.  Many of its features
were advanced at the time, and were incorporated into later LISP dialects. 
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.

Melinda - "Melinda: Linda with Multiple Tuple Spaces", S. Hupfer,
<hupfer-susanne@yale.edu> YALEU/DCS/RR-766, Yale U Feb 1990.

Mentat - U Virginia.  Object-oriented distributed language, an extension of
C++, portable to a variety of MIMD architectures.  "Mentat: An Object-
Oriented Macro Data Flow System", A. Grimshaw <grimshaw@cs.virginia.edu> et
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.
info: mentat@uvacs.cs.virginia.edu

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
Autocode).

Mesa - Xerox PARC, ca 1977.  System and application programming for
proprietary hardware: Alto, Dolphin, Dorado and Dandelion.  Pascal-like
syntax.  Its 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.  Originally for internal use, Mesa was released to a few
universitites in 1985.  "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 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 - "The Vienna Development Method: The Meta Language", D. Bjorner et
al, eds, LNCS 61 SPringer 1978.

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
Crystal).

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

Meta-Vlisp - E. St.James <esj@litp.ibp.fr> France.  A Lisp dialect with
many innovations.

METEOR - Successor to COMIT.  "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.

MHDL - MIMIC Hardware Description Language.

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.

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

MILITRAN - 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).

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
Freemacs.

Miracula - Stefan Kahrs <smk@ed.ac.uk>, LFCS.  An implementation of a
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 heroine of Shakespeare's
Tempest).  David A. Turner <dat@ukc.ac.uk>, U Kent early 1980's.  Lazy,
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,
Springer 1985.  "Functional Programming with Miranda", Holyer, Pitman Press
0-273-03453-7.  (see Miracula, Orwell).
info: Research Software Ltd, or mira-request@ukc.ac.uk

MIRFAC - Mathematics in Recognizable Form Automatically Compiled.  Early
interactive system resembling BASIC, typewriter output with special math
symbols.  Sammet 1969, pp.281-284.

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

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

MIXAL - MIX Assembly Language.  Assembly language for Knuth's hypothetical
MIX machine, used in "The Art of Computer Programming v.1", Donald Knuth,
A-W 1969.

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

ML -

  1.  Manipulator Language.  IBM language for handling robots.

  2.  Meta Language.  R. Milner <rm@lfcs.edinburgh.ac.uk> et al, 1973.  A
polymorphically-typed functional language.  The metalanguage for
programming the Edinburgh LCF proof assistant.  (LCF="Logic for Computable
Functions")  "A Metalanguage for Interactive Proof in LCF", M.J.C. Gordon
et al, 5th POPL, ACM 1978.  LCF ML implemented in Stanford LISP. 
Cardelli's implementation (1981) in Pascal, using the FAM.

MLAB - Modeling LABoratory.  Interactive mathematical modeling.  "MLAB, An
On-Line Modeling Laboratory", NIH (Mar 1975).

ML/I - Early macro translating system.  P.J. Brown, CACM 10(10):618-623,
(Oct 1967).

MLISP - 

  1. M-expression LISP.  J. McCarthy, 1962.  The original "meta-language"
syntax of LISP, intended for external use in place of the parenthesized S-
expression syntax.  "LISP 1.5 Programmer's Manual", J. McCarthy et al, MIT
Press 1962.

  2. Meta-LISP.  D.C. Smith & H. Enea.  LISP variant with ALGOL-like
syntax.  Not just a surface syntax, a full language.  "MLISP", D.C. Smith,
TR CS-179, CS Dept, Stanford (Oct 1970).  Version: MLISP2.

  3. A hybrid of M-expression LISP and Scheme.  "M-LISP: Its Natural
Semantics and Equational Logic", R. Muller, SIGPLAN Notices 26(9):234-242
(Sept 1991) (PEPM '91).

ML-Linda - U Edinburgh, under development.

ML Threads - SML/NJ with mutual exclusion primitives similar to those in
Modula-2+ and Mesa.  Threads are created using 'fork' and communicate via
shared memory, which can be protected by a 'mutex' (monitor).  E. Cooper et
al, "Adding Threads to Standard ML", CMU-CS-90-186, CMU Dec 1990.
Implementations for 68020, SPARC and MIPS, and also Vax- and MIPS-based
multiprocessors.

Mma - R. Fateman, 1991.  A fast Mathematica-like system, in Allegro CL.
ftp: peoplesparc.berkeley.edu:pub/mma.tar.Z

MOBSSL-UAF - Merritt and Miller's Own Block-Structured Simulation
Language-Unpronounceable Acronym For.  Interactive continuous simulations. 
"MOBSSL - An Augmented Block Structured Continuous System Simulation
Language for Digital and Hybrid Computers", M.J. Merritt et al, Proc FJCC
35, AFIPS (Fall 1969).

Mock Lisp - The LISP used by the Gosling Emacs editor.

MODCAL - Version of HP-PASCAL enhanced with system programming constructs,
used internally by HP.

Mode - Object-oriented.  "The Programming Language Mode: Language
Definition and User Guide", J. Vihavainen, C-1987-50, U Helsinki, 1987.

MODEF - Pascal-like language with polymorphism and data abstraction. 
"Definition of the Programming Language MODEF", J. Steensgard-Madsen et al,
SIGPLAN Notices 19(2):92-110 (Feb 1984).

MODEL - Pascal-like language with extensions for large-scale system
programming and interface with FORTRAN applications.  Generic procedures,
and a "static" macro-like approach to data abstraction.  Produced P-code. 
Used to implement DEMOS operating system on Cray-1.  "A Manual for the
MODEL Programming Language", J.B. Morris, Los Alamos 1976.

MODSIM II - 1986.  Object-oriented modular language for discrete
simulation, with multiple inheritance, strong typing, integrated 2D and 3D
graphics.  Compiles to C.  CACI, La Jolla, (619) 457-9681.
list: palmer@world.std.com

Modula - MODUlar LAnguage.  Wirth, 1977.  Predecessor of Modula-2, more
oriented towards concurrent programming but otherwise quite similar. 
"Modula - A Language for Modular Multiprogramming", N. Wirth, Soft Prac &
Exp 7(1):3-35 (Jan 1977).

Modula-2 - Wirth, ETH 1978.  Developed as the system language for the
Lilith workstation.  The central concept is the module which may be used to
encapsulate a set of related subprograms and data structures, and restrict
their visibility from other portions of the program.  Each module has a
definition part giving the interface, and an implementation part.  The
language provides limited single-processor concurrency (monitors,
coroutines and explicit transfer of control) and hardware access (absolute
addresses and interrupts).  "Programming in Modula-2", N. Wirth, Springer
1985.

Modula-2+ - DEC SRC, Palo Alto CA.  Exceptions and threads.  "Extending
Modula-2 to Build Large, Integrated Systems", P. Rovner, IEEE Software
3(6):46-57 (Nov 1986).

Modula-3 - 1988.  A descendant of Modula-2+ and Cedar, designed for safety. 
Objects, threads, exceptions and garbage collection.  Modules are
explicitly safe or unsafe.  As in Mesa, any set of variables can be
monitored.  "Modula-3 Report", Luca Cardelli et al, TR 52, DEC SRC, and
Olivetti Research Center, Aug 1988.  Sam Harbison, BYTE Nov 1990.
<harbison@bert.pinecreek.com>.  Version: SRC Modula-3 V1.5.
ftp: gatekeeper.dec.com
uucp: osu-cis

Modula-P - "Modula-P: A Language for Parallel Programming Definition and
Implementation on a Transputer Network", R. Hoffart et al, IEEE Conf Comp
Langs 1992.

Modula-Prolog - Adds a Prolog layer to Modula-2.  "Modula-Prolog: A
Software Development Tool", C. Muller IEEE Software pp.39-45 (Nov 1986).

Modula/R - Modula with relational database constructs added.  LIDAS Group
(J. Koch, M. Mall, P. Putfarken, M. Reimer, J.W. Schmidt, C.A. Zehnder)
"Modula/R Report", LIDAS Memo 091-83, ETH Zurich, Sep 1983.

Modulex - Based on Modula-2.  Mentioned by M.P. Atkinson & J.W. Schmidt in
a tutorial in Zurich, 1989.

MOPS - Michael Hore.  A derivative of Neon.

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

MORTRAN - A public domain FORTRAN preprocessor for structured programming.

Mouse - Peter Grogono, 1975.  A mighty small macro language.  "Mouse, A
Language for Microcomputers", P. Grogono <grogono@concour.cs.concordia.ca>
Petrocelli Books, 1983.

Moxie - Language for real-time computer music synthesis, written in XPL. 
"Moxie: A Language for Computer Music Performance", D. Collinge, Proc Intl
Computer Music Conf, Computer Music Assoc 1984, pp.217-220.

MP-1 - Assembly language for the MasPar machine.

MPL - 

  1. Early possible name for PL/I.  Sammet 1969, p.542.

  2. MasPar.  A data-parallel version of C.

  3. Motorola Programming Language.  A low-level PL/I-like language,
similar to PL/M, but for the Motorola 6800.

MPL II - Burroughs VMS MPL II Language Reference Manual.

MPPL - Early possible name for PL/I.  Sammet 1969, p.542.

M-Prolog - 

  1. Marseille Prolog.

  2. An extension to Prolog involving modules.  "The MProlog System", J.
Bendl et al, Proc Logic Prog Workshop, 1980.

MPS III - Solving matrices and producing reports.  "MPS III DATAFORM User
Manual", Management Science Systems (1976).

MPSX - Mathematical Programming System Extended.  Solution strategy for
mathematical programming.  "Mathematical Programming System Extended (MPSX)
Control Language User's Manual", SH20-0932, IBM.  Sammet 1978.

MRS - An integration of logic programming into LISP.  "A Modifiable
Representation System", M. Genesereth et al, HPP 80-22, CS Dept Stanford U
1980.

MSG.84 - "Analysis and Design in MSG.84: Formalizing Functional
Specifications", V. Berzins et al IEEE Trans Soft Eng SE-11(8):657-670 (Aug
1985).

Muddle - Original name of MDL.

muFP - Functional language for hardware design, predecessor to Ruby.

Mul-T - An implementation of Multilisp built on T, for the Encore Multimax. 
"Mul-T: A High-Performance Parallel Lisp", SIGPLAN Notices 24(7):81-90 (Jul
1989).

multiC - Wavetracer.  A data-parallel version of C.

Multilisp - Parallel extension of Scheme, with explicit concurrency.  The
form (future X) immediately returns a 'future', and creates a task to
evaluate X.  When the evaluation is complete, the future is resolved to be
the value.  "MultiLisp: A Language for Concurrent Symbolic Computation", R.
Halstead, TOPLAS pp.501-538 (Oct 1985).

MultiScheme - An implementation of Multilisp built on MIT's C-Scheme, for
the BBN Butterfly.  "MultiScheme: A Paralled Processing System Based on MIT
Scheme", J. Miller, TR-402, MIT LCS, Sept 1987.

MUMPS - Massachusetts General Hospital Utility Multi-Programming System.  A
database-oriented OS and the language that goes with it.  Used originally
for medical records.  Current versions for IBM RT and R6000, DSM (Digital
Standard Mumps) for DEC, Datatree MUMPS for IBM PC.  "MUMPS Language
Standard", ANS X11.1-1977.  MUMPS User's Group, Box 208, Bedford MA 01730.
list: MUMPS-L@UGA.BITNET.

MU-Prolog - L. Naish, U Melbourne 1982.  Prolog with 'wait' declarations
for coroutining.  "Negation and Control in Prolog", L. Naish, TR 85/12, U
Melbourne (1985).  (see NU-Prolog).

MuSimp - LISP variant used as the programming language for the PC symbolic
math package MuMath.

Muse - OR-parallel logic programming.

Music - Bell Labs, 60's.  A series of early languages for musical sound
synthesis.  Versions: Music I through Music V.  "An Acoustical Compiler for
Music and Psychological Stimuli", M.V. Mathews, Bell Sys Tech J 40 (1961).

MUSL - Manchester University Systems Language.

MYSTIC - Early system on IBM 704, IBM 650, IBM 1103 and 1103A.  Listed in
CACM 2(5):16 (May 1959).

NASTRAN - NAsa STRess ANalysis program.  Large stress analysis problems. 
"The NASTRAN User's Manual", SP-222(C3), NASA.

Napier - Atkinson & Morrison, St Andrews U; design began ca. 1985, first
implementation Napier88, 1988.  Based on orthogonal persistence, permits
definition and manipulation of namespaces.  "The Napier88 Reference
Manual", R. Morrison et al, CS Depts St Andrews U and U Glasgow, Persistent
Programming Research Report PPRR-77-89, 1989.

NAPLPS - North American Presentation-Level-Protocol Syntax.  Language for
sending text and graphics over communication lines.  Used by videotex
systems.

NAPSS - Numerical Analysis Problem Solving System.  Purdue ca. 1965. 
"NAPSS - A Numerical Analysis Problem Solving System", J.R. Rice et al,
Proc ACM 21st Natl Conf, 1966.  Sammet 1969, p.299.

NASTRAN - Engineering language, listed [?] 1976.

NATURAL - Integrated 4GL used by the database system ADABAS.  Menu-driven
version: SUPER/NATURAL.

Natural English - Used to mean programming in normal, spoken English. 
Sammet 1969, p.768.

Nawk - New AWK.  AT&T.  Pattern scanning and processing language.  An
enhanced version of AWK, with dynamic regular expressions, additional
built-ins and operators, and user-defined functions.

NB - ("New B"?)  Original name of C.

NDL- Network Definition Language.  Used to program the DCP (Data
Communications Processor) on Burroughs Large System.  Version: NDL II.

Nebula - ICL.  Early business-oriented language for Ferranti Orion
computer.  "NEBULA - A Programming Language for Data Processing", T.G.
Braunholtz et al, Computer J 4(3):197-201 (1961).

NELIAC - Navy Electronics Laboratory International ALGOL Compiler.  1958-
1959.  Numeric and logical computations, based on IAL.  "Neliac - A Dialect
of Algol", H.D. Huskey et al, CACM 3(8):463-468 (Aug 1960).  Version:  BC
NELIAC.

Neon - Charles Duff.  An object-oriented extension of FORTH, for the Mac. 
Inheritance, SANE floating point, system classes and objects for Mac
interfacing, overlays.  Sold by Kriya Systems, 1985-1988.  Modified, made
PD and renamed Yerk.

NETL - Semantic network language, for connectionist architectures.

NEWP - NEW Programming language.  Replaced ESPOL on Burroughs Large System.

NewsClip - Clarinet article filter language.

Newton - ALGOL-like language used for undergraduate teaching at Federal
Tech U Lausanne (EPFL).  "Programming in Newton", Wuetrich and Menu, EPFL
1982.

NFQL - "NFQL: The Natural Forms Query Language", D. Embley, Trans Database
Sys 14(2):168-211 (June 1989).

NGL - Dialect of IGL.

NIAL - Nested Interactive Array Language.  Queen's U, Canada.  High-level
array-oriented language.  "Programming Styles in NIAL", M.A. Jenkins et al,
IEEE Software 3(1):46-55 (Jan 1986).  (see Q'NIAL).

NICOL I - 

  1. Small subset of PL/I by (Massachusetts) Computer Assoc, ca. 1965. 
Version: NICOL II (1967).  Sammet 1969, p.542.

  2. ICL, 1968. [same as 1?]

NIKL - Frame language.  "Recent Developments in NIKL", T.R. Kaczmarek et
al, Proc AAAI-86, 1986.

NIL -

  1. A forerunner of Common LISP.  "NIL: A Perspective", Jon L. White,
MACSYMA Users' Conf Proc, 1979.

  2. Network Implementation Language.  Strom & Yemini, TJWRC, IBM. 
Implementation of complex networking protocols in a modular fashion.  "NIL:
An Integrated Language and System for Distributed Programming", R. Strom et
al, SIGPLAN Notices 18(6):73-82 (June 1983).

Noddy - A simple (hence the name) language to handle text and interaction
on the Memotech home computer.  Has died with the machine.

NOMAD - Database language.  "NOMAD Reference Manual", Form 1004, National
CSS Inc (Dec 1976).  Version: NOMAD2, Must Software Intl.
list: NOMAD2-L@TAMVM1.BITNET

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

NORC COMPILER - Early system on NORC machine.  Listed in CACM 2(5):16 (May
1959).

NORD PL - Intermediate language for Norsk Data computers.  Sintran III (OS
of the ND 10, late 70's) was written in NORD PL.  "NORD PL User's Guide",
ND-60.047.03.

Nother - Parallel symbolic math.
info: karhu@cs.umu.se

NPL -

  1. New Programming Language.  IBM's original (temporary) name for PL/I,
changed due to conflict with England's "National Physical Laboratory."  MPL
and MPPL were considered before settling on PL/I.  Sammet 1969, p.542.

  2. Burstall, 1977.  A predecessor of HOPE.  Pattern matching and set
comprehensions.

  3. NonProcedural Language.  1980.  A relational database language.  "An
Introduction to Nonprocedural Languages Using NPL", T.D. Truitt et al,
McGraw-Hill 1983.  Versions for Apple II, MS-DOS.

NPPL - Network Picture Processing Language.  Interactive language for
manipulation of digraphs.  "A Graph Manipulator for On-line Network Picture
Processing", H.A. DiGiulio, Proc FJCC 35 (1969).

N-Prolog - Prolog extended with explicit negation.  Dov Gabbay, J Logic
Programming.

Nqthm - Language[?] used in the Boyer-Moore theorem prover.  "Proving
Theorems About LISP Functions", R.S. Boyer et al JACM 22(1):129-144 (Jan
1975).

Nroff - Text formatting language/interpreter, based on Unix roff.  (See
Troff, Groff.)

NUCLEOL - List processing language, influenced by EOL.  J. Nievergelt,
Computer J 13(3) (Aug 1970).

NU-Prolog - U Melbourne.  Prolog with 'when' declarations.  "NU-Prolog
Reference Manual - Version 1.3", J.A. Thom et al eds, TR 86/10, U Melbourne
(1988).
info: jas@mulga.oz.au

Nuprl - (pronounced "new pearl")  Nearly Ultimate PRL.  Interactive
creation of formal mathematics, including definitions and proofs.  The