Report Number: CS-TR-70-187
Institution: Stanford University, Department of Computer Science
Title: MPL, Mathematical Programming Language: specification manual
for Committee review
Author: Eisenstat, Stanley C.
Author: Magnanti, Thomas L.
Author: Maier, Steven F.
Author: McGrath, Michael B.
Author: Nicholson, Vincent J.
Author: Riedl, Christiane
Author: Dantzig, George B.
Date: November 1970
Abstract: Mathematical Programming Language (MPL) is intended as a
highly readable, user oriented, programming tool for use in
the writing and testing of mathematical algorithms, in
particular experimental algorithms for solving large-scale
linear programs. It combines the simplicity of standard
mathematical notation with the power of complex data
structures. Variables may be implicitly introduced into a
program by their use in the statement in which they first
appear. No formal defining statement is necessary. Statements
of the "let" and "where" type are part of the language.
Included within the allowable data structures of MPL are
matrices, partitioned matrices, and multidimensional arrays.
Ordered sets are included as vectors with their constructs
closely paralleling those found in set theory. Allocation of
storage is dynamic, thereby eliminating the need for a data
manipulating subset of the language, as is characteristic of
most high level scientific programming languages.
This report summarizes the progress that has been made to
date in developing MPL. It contains a specification manual,
examples of the application of the language, and the future
directions and goals of the project.
A version of MPL, called MPL/70, has been implemented using
PL/I as a translator. This will be reported separately. Until
fully implemented, MPL is expected to serve primarily as a
highly readable communication language for mathematical