HOME

TheInfoList



OR:

MATH-MATIC is the marketing name for the AT-3 (Algebraic Translator 3)
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
, an early
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
for the
UNIVAC I The UNIVAC I (Universal Automatic Computer I) was the first general-purpose electronic digital computer design for business application produced in the United States. It was designed principally by J. Presper Eckert and John Mauchly, the invento ...
and
UNIVAC II The UNIVAC II computer was an improvement to the UNIVAC I that the UNIVAC division of Sperry Rand first delivered in 1958. The improvements included the expansion of core memory from 2,000 to 10,000 words; UNISERVO II tape drives, which could us ...
. MATH-MATIC was written beginning around 1955 by a team led by
Charles Katz Charles Katz (born in 1927) is an American mathematician and computer scientist known for his contributions to early compiler development in the 1950s. He received two degrees in mathematics, a Bachelor of Science (B.S.) at Temple University in ...
under the direction of
Grace Hopper Grace Brewster Hopper (; December 9, 1906 – January 1, 1992) was an American computer scientist, mathematician, and United States Navy Rear admiral (United States), rear admiral. One of the first programmers of the Harvard Mark I, Harvard Mar ...
. A preliminary manual was produced in 1957 and a final manual the following year. Syntactically, MATH-MATIC was similar to Univac's contemporaneous business-oriented language,
FLOW-MATIC FLOW-MATIC, originally known as B-0 (Business Language version 0), was the first English-like data processing language. It was developed for the UNIVAC I at Remington Rand under Grace Hopper from 1955 to 1959, and helped shape the development of CO ...
, differing in providing algebraic-style expressions and floating-point arithmetic, and arrays rather than record structures.


Notable features

Expressions in MATH-MATIC could contain numeric exponents, including decimals and fractions, by way of a custom typewriter. MATH-MATIC programs could include
inline assembler In computer programming, an inline assembler is a feature of some compilers that allows low-level code written in assembly language to be embedded within a program, among code that otherwise has been compiled from a higher-level language such as C ...
sections of
ARITH-MATIC :''You may have been looking for arithmetic, a branch of mathematics.'' ARITH-MATIC is an extension of Grace Hopper's A-2 programming language, developed around 1955. ARITH-MATIC was originally known as A-3, but was renamed by the marketing dep ...
code and
UNIVAC UNIVAC (Universal Automatic Computer) was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company an ...
machine code. The
UNIVAC I The UNIVAC I (Universal Automatic Computer I) was the first general-purpose electronic digital computer design for business application produced in the United States. It was designed principally by J. Presper Eckert and John Mauchly, the invento ...
had only 1000 words of memory, and the successor
UNIVAC II The UNIVAC II computer was an improvement to the UNIVAC I that the UNIVAC division of Sperry Rand first delivered in 1958. The improvements included the expansion of core memory from 2,000 to 10,000 words; UNISERVO II tape drives, which could us ...
as little as 2000. MATH-MATIC allowed for larger programs, automatically generating code to read
overlay Overlay may refer to: Computers *Overlay network, a computer network which is built on top of another network *Hardware overlay, one type of video overlay that uses memory dedicated to the application *Another term for exec, replacing one process ...
segments from
UNISERVO The UNISERVO tape drive was the primary I/O device on the UNIVAC I computer. It was the first tape drive for a commercially sold computer. The UNISERVO used metal tape: a thin strip of nickel-plated phosphor bronze (called Vicalloy) 1200 feet lon ...
tape as required. The compiler attempted to avoid splitting loops across segments.


Influence

In proposing the collaboration with the ACM that led to
ALGOL 58 ALGOL 58, originally named IAL, is one of the family of ALGOL computer programming languages. It was an early compromise design soon superseded by ALGOL 60. According to John Backus The Zurich ACM-GAMM Conference had two principal motives in pro ...
, the
Gesellschaft für Angewandte Mathematik und Mechanik Gesellschaft für Angewandte Mathematik und Mechanik ("Society of Applied Mathematics and Mechanics"), often referred to by the acronym GAMM, is a German society for the promotion of science, founded in 1922 by the physicist Ludwig Prandtl and th ...
wrote that it considered MATH-MATIC the closest available language to its own proposal. In contrast to Backus' FORTRAN, MATH-MATIC did not emphasise execution speed of compiled programs. The UNIVAC machines did not have
floating-point In computing, floating-point arithmetic (FP) is arithmetic that represents real numbers approximately, using an integer with a fixed precision, called the significand, scaled by an integer exponent of a fixed base. For example, 12.345 can b ...
hardware, and MATH-MATIC was translated via A-3 (
ARITH-MATIC :''You may have been looking for arithmetic, a branch of mathematics.'' ARITH-MATIC is an extension of Grace Hopper's A-2 programming language, developed around 1955. ARITH-MATIC was originally known as A-3, but was renamed by the marketing dep ...
) pseudo-assembler code rather than directly to UNIVAC machine code, limiting its usefulness.


MATH-MATIC Sample program

A sample MATH-MATIC program:Univac (1958) p. 8


Notes


References

* * * * * * * {{cite web , url=http://hopl.info/showlanguage.prx?exp=29 , title=UNICODE — UNIVAC hybrid of FORTRAN and MATH-MATIC , website=Online Historical Encyclopaedia of Programming Languages , access-date=2016-03-20 , archive-url=https://web.archive.org/web/20160403013141/http://hopl.info/showlanguage.prx?exp=29 , archive-date=2016-04-03 , url-status=dead Numerical programming languages Programming languages Programming languages created in 1957