History of MUMPS
Posted on:3/24/2006
| MUMPS, the Massachusetts General Hospital Utility Multi-Programming System, was developed by Neil Pappalardo in Octo Barnett's animal lab at Massachusetts General Hospital (MGH) in Boston during 1966 and 1967. The original MUMPS system was built on a spare DEC PDP-7. |
MUMPS, the Massachusetts General Hospital Utility Multi-Programming System, was developed by Neil Pappalardo in Octo Barnett's animal lab at Massachusetts General Hospital (MGH) in Boston during 1966 and 1967. The original MUMPS system was built on a spare DEC PDP-7.
Octo Barnett and Neil Pappalardo were also involved with MGH's plans for a Hospital Information System, obtained a PDP-9 and began using MUMPS in the admissions cycle and laboratory test reporting. MUMPS was then an interpreted language and incorporated a hierarchical database file system to standardize interaction with the data. The origins of MUMPS can be traced from Rand Corporation JOSS through BBN's TELCOMP and STRINGCOMP. The MUMPS team deliberately chose to write the new language with portability in mind. Another feature not widely supported in operating systems of the era was multitasking, which was also built into MUMPS itself.
MUMPS was soon ported to a PDP-15 where it lived for some time. Developed on a government grant, MUMPS was required to be released in the public domain (no longer a requirement for grants), and was soon ported to a number of other systems including the popular PDP-8, the Data General Nova and the PDP-11. Word of MUMPS spread mostly through the medical community, and by the early 1970s was in widespread use, often being locally modified for their own needs.
By the early 1970s there were many varied implementations of MUMPS on a range of hardware platforms. The most widespread being DECs MUMPS-11 on the PDP-11 and Meditech's MIIS. In 1972 various MUMPS users gathered in order to standardize the now fractured language, creating the MUMPS Users Group and MUMPS Development Committee (MDC). These efforts proved successful; a standard was complete by 1974, and was approved, on September 15, 1977, as ANSI standard, X11.1-1977. At about the same time DEC launched DSM-11 (Digital Standard MUMPS) for the PDP-11. This quickly dominated the market and became the reference implementation of the time.
During the early 1980s a number of vendors sprung up to market MUMPS-based platforms. The two largest were Digital Equipment Corporation with their DSM (Digital Standard MUMPS) product, and InterSystems with their ISM (InterSystems M) product on VMS and UNIX, and M/11+ on the PDP-11 platform. Other companies that developed important MUMPS implementations were: Greystone Technology Corporation with a compiled version called GT.M, DataTree Inc. with an Intel PC based product called DTM, Micronetics Design Corporation with a product line called MSM for UNIX and Intel PC platforms (later ported to IBM's VM operating system), and M-Global with MGM a Mac OS based product. M-Global MUMPS was the first commercial MUMPS for the PC and the only Mac product. DSM-11 was superseded by VAX/DSM for the VAX/VMS platform. This was then ported to the Alpha in two variants as DSM for OpenVMS, and as DSM for Ultrix.
This period also saw a lot of activity by the MDC. The second revision of the ANSI standard for MUMPS was (X11.1-1984) was approved on November 15, 1984. On November 11, 1990 the third revision of the ANSI standard (X11.1-1990) was approved. In 1992 this same standard was also adopted as ISO standard 11756-1992. Around this time the use of M as an alternative name was sanctioned. On December 8, 1995 the fourth revision of the standard (X11.1-1995) was approved by ANSI, and by ISO in 1999 as ISO 11756-1999. The MDC finalized a further revision to the standard in 1998 but this has never been presented to ANSI for approval. On 6 January 2005, ISO re-affirmed its MUMPS-related standards: ISO/IEC 11756:1999, language standard, ISO/IEC 15851:1999, Open MUMPS Interconnect and ISO/IEC 15852:1999, MUMPS Windowing Application Programmers Interface.
By 2000, the middleware vendor InterSystems had become the dominant player in the market with the purchase of several of the other players. Initially they acquired DataTree Inc. in the early 1990's. On December 30, 1995, the acquisition of the DSM product line from DEC was announced. InterSystems then began to consolidate these products into a single product line, badging them on a number of platforms as OpenM. In 1997 InterSystems completed this consolidation by launching a unified successor named Caché. This was based on their ISM product but with some influences from the other products. The assets of Micronetics Design Corporation were also eventually acquired by InterSystems on June 21, 1998. Intersystems remains the dominant MUMPS vendor, selling Caché to MUMPS developers who write applications for a variety of operating systems.
Greystone Technology Corporation's GT.M product was sold to Sanchez Computer Associates Inc. (now part of Fidelity National Financial Inc.) in the mid 1990s. On November 7, 2000 Sanchez made GT.M for Linux available under the GPL license and on October 28, 2005 GT.M for OpenVMS and Tru64 UNIX were also made available under the GPL license. GT.M continues to be available on other UNIX platforms under a traditional license.
The newest implementation of MUMPS, released in April 2002, is an MSM derivative called M21 from the Real Software Company of Rugby, UK.
There are also several open source implementations of MUMPS.
One of the original creators of the MUMPS language, Neil Pappalardo, went on to found a company called Meditech. He extended and built on the MUMPS language, naming the new language MIIS (and later, MAGIC). Unlike Intersystems, Meditech does not sell middleware, so MIIS and MAGIC are only used internally at Meditech.
All text is available under the terms of the GNU Free Documentation License (see Copyrights for details).