编程范型 | 指令式,过程式 |
---|---|
设计者 | Neil Pappalardo |
发行时间 | 1966年 |
稳定版本 | ANSI X11.1-1995
(1995年12月8日
) |
型态系统 | 无类型 |
操作系统 | 跨平台 |
受启发于 | |
JOSS[1] | |
施影响于 | |
PSL, Caché ObjectScript, GT.M |
MUMPS(全称:马萨诸塞总医院实用多用途编程系统,Massachusetts General Hospital Utility Multi-Programming System),是一个指令式高级程序设计语言,主要用于管理医药数据。它最早由马萨诸塞总医院开发,主要特性是在语言层面包含了一个满足ACID原则的关系数据库。MUMPS能够直接高效地对磁盘上的数据进行操纵[2]。
语法
在 MUMPS 中,一切以 ^
符号开头的变量名都是持久的,被存放于磁盘上。因此,MUMPS 为所有程序都提供了一个关系数据库。这些数据是在程序之间共享的,因此其他运行中的 MUMPS 程序也可以对某个程序所创建的此类变量进行读写。而不带这一前缀的变量名则是临时或本地的[3]。
MUMPS 缺少很多当今语言中被视作理所当然的功能。例如,MUMPS 中的算术表达式没有优先级的概念,也就是说 1+2*3
将得到 9。MUMPS 中没有类型,字符串类型在需要时将通过贪心的方式强制转换为数字类型。控制结构的作用域只到当前行结束为止。
例子
write "Hello, World!",!
由于 MUMPS 中所有函数和过程的名字都可以缩写,这段代码也可以写成
w "Hello, World!",!
参考资料
- ↑ G. O. Barnett, D. E. Souder, J. Bowie & Norma Justice. MUMPS: A support for medical information systems. Medical Informatics. 1976: 183-189. doi:10.3109/14639237609017783.
- ↑ Tweed, Rob; James, George. MUMPS: the Internet scale database. 2008-08-02 [2022-10-25] –通过SlideShare.
- ↑ Extreme Database programming with MUMPS Globals (PDF). Gradvs1.mjgateway.com. [2013-08-13].