Q ZR $ZTLP I Q=-1 S Q,A=F G T
I Q< S A=F G R
如何识别MUMPS中的标签,关键字和变量?
上面代码中的Q是什么?即标签,变量或关键字?
定义变量关键字和子程序有哪些规则?
否则很难识别你能否提出原因,因为我无法理解我现有的代码是什么?
答案 0 :(得分:3)
Q
在第一个实例中表示QUIT
,但I Q=-1
为IF Q EQUALS -1
- Q
此处也是变量 - 不是很好的做法
S Q,A=F again SET Q and A = F
I Q< S A=F G R if Q is less than null (???) SET A=F then GOTO line R.
答案 1 :(得分:2)
秘密是:空白。
一般MUMPS程序行语法是: ...
Lebel和参数是可选的:当一行没有标签时,它以tab开头,当一个命令没有参数时(在极少数情况下会发生,例如:Quit),命令后跟两个空格。
当一行以命令开头(没有标签而没有标签)时,它不是程序的一部分,而是一个立即执行的命令。
你可能觉得这很令人困惑,但请记住,MUMPS是在机器运转缓慢时设计的;如果严格分隔命令,则很容易解析命令。这就是为什么命令可以缩写为单字母,这也就是为什么MUMPS没有操作优先级(较新的MUMPS系统可配置为使用运算符优先级而不是传统的从左到右处理顺序)。