MUMPS или М | |
---|---|
Класс языка | процедурный |
Тип исполнения | интерпретируемый, компилируемый в байт-код |
Появился в | 1966 |
Автор | Neil Pappalardo[d] |
Расширение файлов |
.m |
Выпуск | ANSI X11.1-1995 |
Система типов | слабая динамическая |
Основные реализации: | Caché, YottaDB, GT.M, MiniM, ДИАМС |
Испытал влияние | JOSS |
Повлиял на | Caché ObjectScript |
Для улучшения этой статьи желательно: |
MUMPS (англ. Massachusetts General Hospital Utility Multi-Programming System — Мульти-программная система Общеклинической больницы Массачусетса; иногда M, или М-система) — язык программирования, созданный в 1966—1967 годах для использования в лечебной индустрии.
Из MUMPS в 1970-х годах вышла свободная медицинская система VA VistA, стандарт де-факто медицинской информационной системы[источник не указан 2592 дня].
Определение MUMPS как языка программирования условно, так как он зародился во времена кристаллизации языков программирования, и сфера его применения простирается от работы с медицинским оборудованием до операционных СУБД и экспертных систем (например, VA VistA).
MUMPS зародился в специфичной медицинской среде кардиологов (Octo Barnett). Изначально разработан с целью облегчить написание приложений баз данных, одновременно с максимальным использованием компьютерных ресурсов. Часто использовался в лечебных учреждениях и для финансовых информационных систем и баз данных (особенно для разработанных в 1970-х и начале 1980-х годов) и продолжает использоваться у ряда клиентов. Сейчас MUMPS является базовым языком в системах GT.M, MiniM, YottaDB, DSM, MSM, M3-LITE. Наиболее крупной и известной реализацией MUMPS языка является объектно-ориентированная СУБД Caché (с объектно-ориентированным расширением М-языка - ObjectScript) и IRIS Data Platform
Глобальные массивы в MUMPS системах используются для построения и управления базами данных. Структура глобальных массивов — уникальная особенность языка MUMPS. Эти массивы автоматически записываются на диск, без необходимости резервирования и адресации пространства для записи, относятся к иерархическим и разрежённым структурам по самой своей природе. В массивах может содержаться произвольное количество уровней иерархии, причём данные могут содержаться на любом из уровней массива. Индексом массива может быть любое корректное MUMPS выражение, результатом оценки которого может быть число, или строка символов.[1]
Свободно распространяемая реализация M-системы - GT.M, так же как YottaDB, оптимизирована для транзакций и может быть платформой разработки, имеет компилятор соответствующий стандарту ANSI/ISO. Используется в различных отраслях, более всего в финансах и здравоохранении.
С 6 января 2005, и затем повторно с 25 июня 2010, ISO-комитет подтвердил связанные с технологиями MUMPS международные стандарты: ISO/IEC 11756:1999, language standard, ISO/IEC 15851:1999, Open MUMPS Interconnect and ISO/IEC 15852:1999, MUMPS Windowing Application Programmers Interface.
^ [System,Directory]Name(Subscripts)
— синтаксис глобальной ссылки, на программу или данные. Идентификатор System обозначает, что ссылка относится к области расположенной в той же системе (на том же узле сети), что и текущий процесс. Идентификатор области (Directory), указывает, что обращение производится к области назначенной текущему процессу при его запуске;%
— начало имени библиотечного массива;:
— пост-условие оператора;$
— начало имены системных переменных;[
— операция «строка содержит»;]
— операция «строка следует»;$Z
— функции фирм-разработчиков MUMPS и не являющиеся стандартными.Программа Hello, world!, написанная на MUMPS, будет выглядеть так:
hello()
write "Hello, World!",!
quit
Она может быть запущена из командной строки MUMPS командой:
do ^hello()
С того момента как MUMPS стал поддерживать последовательные команды в одной строке, а команды стало возможно записывать однобуквенным сокращением, эту программу можно записать более компактно:
hello() w "Hello, World!",! q
В публикациях сторонников MUMPS утверждается, что эта технология является малоизвестной и существенно менее распространённой за пределами больших корпоративных систем. Новые приложения баз данных чаще всего создаются с использованием поддерживаемого в современных реализациях MUMPS SQL и популярных языков программирования[2].
Критики MUMPS прямо называют эту технологию устаревшей[3] и указывают на такие недостатки MUMPS как[3][4]:
Язык MUMPS критики называют провоцирующим ошибки, поскольку[3][4]:
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .