WikiDer > MATH-MATIC - Википедия
Парадигма | императив |
---|---|
Разработано | Ремингтон Рэнд |
Впервые появился | 1957 |
Платформа | UNIVAC I, UNIVAC II |
Под влиянием | |
ПОТОК-MATIC | |
Под влиянием | |
UNICODE (язык программирования) |
МАТЕМАТИЧЕСКИЙ маркетинговое название AT-3 (Algebraic Translator 3) компилятор, рано язык программирования для UNIVAC I и UNIVAC II.
MATH-MATIC был написан примерно в 1955 году командой во главе с Чарльз Кац под руководством Грейс Хоппер. Предварительное руководство[1] был произведен в 1957 году и окончательное руководство[2] в следующем году.
Синтаксически MATH-MATIC был похож на современный бизнес-ориентированный язык Univac, ПОТОК-MATIC, отличающиеся тем, что предоставляют выражения в алгебраическом стиле и арифметику с плавающей запятой, а также массивы, а не структуры записей.
Примечательные особенности
Выражения в MATH-MATIC могут содержать числовые показатели, включая десятичные дроби и дроби, с помощью специальной пишущей машинки.[3]
Программы MATH-MATIC могут включать встроенный ассемблер разделы АРИФ-МАТИЧЕСКИЙ код и UNIVAC Машинный код.[4]
В UNIVAC I имел всего 1000 слов памяти, а его преемник UNIVAC II всего 2000. MATH-MATIC позволял большие программы, автоматически генерируя код для чтения наложение сегменты из UNISERVO лента по мере необходимости. Компилятор пытался избежать разделения циклов по сегментам.[5]
Влияние
Предлагая сотрудничество с ACM это привело к АЛГОЛ 58, то Gesellschaft für Angewandte Mathematik und Mechanik написал, что считает MATH-MATIC наиболее близким доступным языком к своему собственному предложению.[6]
В отличие от Бэкуса FORTRAN, MATH-MATIC не делает упор на скорость выполнения скомпилированных программ. Машины UNIVAC не имели плавающая точка аппаратное обеспечение, а MATH-MATIC был переведен через A-3 (АРИФ-МАТИЧЕСКИЙ) псевдоассемблерного кода, а не непосредственно в машинный код UNIVAC, что ограничивает его полезность. [7]
MATH-MATIC Пример программы
Пример программы MATH-MATIC:[8]
(2) НАБОР АЛЬФА. (2A) ПРОЧИТАЙТЕ A B C SERVO 4 ХРАНИЛИЩЕ A ЕСЛИ SENTINEL переходит на сообщение 8. (3) ПРОЧИТАЙТЕ D F SERVO 5. (4) ВАРИАНТЫ Y 1 (0.1) 3 ПРЕДЛОЖЕНИЕ 5 - 6. (5) Х1 = (7 * 103* Y * A * SIN ALPHA)3 / (B POW D + C POW E). (6) ЗАПИСАТЬ И РЕДАКТИРОВАТЬ А Y D E X1 SERVO 6. (7) ПЕРЕЙТИ К ПРЕДЛОЖЕНИЮ 2А. (8) ЗАКРЫТЬ ВВОД И ПЕРЕмотка 3. (9) ЗАКРЫТИЕ ВЫВОДА 6. (10) ПРОЧИТАЙТЕ F G H N SERVO 4 STORAGE, ЕСЛИ SENTINEL ПЕРЕХОДИТ НА ПРЕДЛОЖЕНИЕ 20. (11) ВЫПОЛНИТЬ ПРЕДЛОЖЕНИЕ 3. (12) X2 = (3 ROOT (E-G) + LOG (D + N)) / (F2.6* EXP H). (13) ЗАПИСЬ РЕДАКТИРОВАТЬ F D F X2 SERVO 6. (16) ПЕРЕЙТИ К ПРЕДЛОЖЕНИЮ 10. (20) СТОП.
Примечания
Рекомендации
- Ash, R .; Broadwin, E .; Della Valle, V .; Greene, M .; Jenny, A .; Кац, К.; Ю. Л. (1957-04-19). Предварительное руководство по системам MATH-MATIC и ARITH-MATIC для алгебраического перевода и компиляции для UNIVAC I и II (PDF) (Технический отчет). Филадельфия: Remington Rand Univac. Архивировано из оригинал (PDF) на 2014-12-26. Получено 2016-03-19.
- Бемер, Роберт В. (1969), Политико-социальная история Алгола (с хронологией в виде дневника) (PDF), получено 2016-03-20
- Кнут, Дональд; Трабб Пардо, Луис (август 1976 г.). Раннее развитие языков программирования (Технический отчет). Департамент компьютерных наук, Школа гуманитарных и естественных наук, Стэнфордский университет. Получено 2016-03-19.
- Саммет, Жан (1969). Языки программирования: история и основы. Прентис-Холл. С. 132, 135–137. ISBN 978-0-13-729988-1.
- Система программирования Univac MATH-MATIC (PDF) (Технический отчет). Ремингтон Рэнд Univac. 1958 г.. Получено 2016-03-19.
- «MATH-MATIC - Математически ориентированный автокод (компьютерный язык)». Интернет-историческая энциклопедия языков программирования. Архивировано из оригинал на 2016-04-02. Получено 2016-03-20.
- «UNICODE - UNIVAC гибрид FORTRAN и MATH-MATIC». Интернет-историческая энциклопедия языков программирования. Архивировано из оригинал на 2016-04-03. Получено 2016-03-20.