|Designed by||Remington Rand|
|Platform||UNIVAC I, UNIVAC II|
|UNICODE (programming language)|
Syntactically, MATH-MATIC was similar to Univac's contemporaneous business-oriented language, FLOW-MATIC, differing in providing algebraic-style expressions and floating-point arithmetic, and arrays rather than record structures.
Expressions in MATH-MATIC could contain numeric exponents, including decimals and fractions, by way of a custom typewriter.
The UNIVAC I had only 1000 words of memory, and the successor UNIVAC II as little as 2000. MATH-MATIC allowed for larger programs, automatically generating code to read overlay segments from UNISERVO tape as required. The compiler attempted to avoid splitting loops across segments.
In proposing the collaboration with the ACM that led to ALGOL 58, the Gesellschaft für Angewandte Mathematik und Mechanik 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 hardware, and MATH-MATIC was translated via A-3 (ARITH-MATIC) pseudo-assembler code rather than directly to UNIVAC machine code, limiting its usefulness. 
MATH-MATIC Sample program
A sample MATH-MATIC program:
(2) TYPE-IN ALPHA . (2A) READ A B C SERVO 4 STORAGE A IF SENTINEL JUMP TO SENTENCE 8 . (3) READ D F SERVO 5 . (4) VARY Y 1 (0.1) 3 SENTENCE 5 THRU 6 . (5) X1 = (7*103*Y*A*SIN ALPHA)3 / (B POW D+C POW E) . (6) WRITE AND EDIT A Y D E X1 SERVO 6 . (7) JUMP TO SENTENCE 2A . (8) CLOSE-INPUT AND REWIND SENTENCE 3 . (9) CLOSE-OUTPUT SENTENCE 6 . (10) READ F G H N SERVO 4 STORAGE A IF SENTINEL JUMP TO SENTENCE 20 . (11) EXECUTE SENTENCE 3 . (12) X2 = (3 ROOT (E-G)+LOG (D+N)) / (F2.6*EXP H) . (13) WRITE EDIT F D F X2 SERVO 6 . (16) JUMP TO SENTENCE 10 . (20) STOP .
- Ash (1957)
- Univac (1958)
- Sammet (1969) p. 135
- Sammet (1969) p. 137
- Sammet (1969) p. 137
- Bemer (1969) p. 161
- Knuth (1976) p. 90
- Univac (1958) p. 8
- Ash, R.; Broadwin, E.; Della Valle, V.; Greene, M.; Jenny, A.; Katz, C.; Yu, L. (1957-04-19). Preliminary Manual for MATH-MATIC and ARITH-MATIC Systems for Algebraic Translation and Compilation for UNIVAC I and II (PDF) (Technical report). Philadelphia: Remington Rand Univac. Archived from the original (PDF) on 2014-12-26. Retrieved 2016-03-19.
- Bemer, Robert W. (1969), A Politico-Social History of Algol (With a Chronology in the Form of a Log Book) (PDF), retrieved 2016-03-20
- Knuth, Donald; Trabb Pardo, Luis (August 1976). The Early Development of Programming Languages (Technical report). Computer Science Department, School of Humanities and Sciences, Stanford University. Retrieved 2016-03-19.
- Sammet, Jean (1969). Programming Languages: History and Fundamentals. Prentice-Hall. pp. 132, 135–137. ISBN 978-0-13-729988-1.
- Univac MATH-MATIC Programming System (PDF) (Technical report). Remington Rand Univac. 1958. Retrieved 2016-03-19.
- "MATH-MATIC — Mathematically oriented autocode (Computer Language)". Online Historical Encyclopaedia of Programming Languages. Archived from the original on 2016-04-02. Retrieved 2016-03-20.
- "UNICODE — UNIVAC hybrid of FORTRAN and MATH-MATIC". Online Historical Encyclopaedia of Programming Languages. Archived from the original on 2016-04-03. Retrieved 2016-03-20.