MUMPS Overview

Topics:

MUMPS (Massachusetts General Hospital Utility Multi-Programming System), or alternatively M, is a programming language, originally for use in the healthcare industry. It was designed for the production of multi-user database-driven applications. MUMPS is a language intended and designed to build database applications. The original implementations were interpreted, though newer implementations may be fully or partially compiled. Database interaction is transparently built into the language. The MUMPS language assumes the presence of a MUMPS hierarchical structure.

Globals

Variables using permanent storage are called Globals in MUMPS. Globals represent data as persistent sparse arrays, giving the MUMPS database the characteristics of a document-oriented database.

Subscripts

All variables (both RAM and disk-based) are hierarchical and can have child nodes (called subscripts in MUMPS terminology). Thus, the variable 'Car' can have subscripts "Door", "Steering Wheel", and "Engine", each of which can contain a value and have subscripts of their own. For example,

SET ^Car("Door","Color")="BLUE"

In MUMPS terminology, "Color" is the second subscript of the variable ^Car. Both the names of the child nodes, and the child nodes themselves, are called subscripts. Hierarchical variables are similar to objects with properties in object-oriented languages.