2010-11-11 83 views
8

我正在为其分析工具,我需要MUMPS示例代码。任何人都可以为我提供MUMPS实时代码或示例代码吗?还建议一些相同的链接。需要MUMPS示例代码

回答

3

我不认为这样做足以用于分析目的,但在M[UMPS] by Example处有很多小例子。 MUMPS Wikipedia页面上还有一些冗长的样本。我不知道他们是否独立。没有自己测试过。

3

VistA是在MUMPS上编写的退伍军人管理局的开源EMR。您可以从这里下载VistA wiki:OpenVistA Download Page

我还没有尝试自己下载它,因此您可能需要安装MUMPS才能访问源代码。祝你好运!

12

这是一些流行性腮腺炎我写的乐趣。我想如果你可以分析这个,你的工具可以工作:

Q N R,Q,C,D,E,W,B,G,H,S,T,U,V,F,L,P,N,J,A S N=$G(N),Q='N,F=Q+Q,P=F+F,W=$L($T(Q)) 
S W=$E(W,Q),S='N_+N,W=W-F*S,L=$G(L),R=$C(Q_F_P),R(F)=$C(F+Q_F),R(P)=$C(W-F) W # 
S T=$E($T(Q+F),F,W\S)_$C(W+S+F) X T S B=$P(T,$C(P_P),F),C=B\(W*W),D=B-(C*W*W)\W 
F G=S-Q:F:S+F+Q S E=B-(C*W*W+(D*W)),H=$E($T(Q),G),@H=$S(@H<S:'Q,Q:N)[email protected],T=C_D_E 
F A=Q:Q:W\S S J=$E(T,A),C(F)=$S(J>(F+Q)&(J<(S-F)):Q,Q:+N),C(P)=$S(J#F:Q,Q:+N) D 
.S C(Q)=$S(J<(S-F):+N,Q:Q),C(F+Q)=$S(J>Q&(J<(S-F))&(J'=(P+'L))&(J'=(P)):Q,Q:+N) 
.S H('L)=L F S H(N?.E)=$O(C(H('$G(N)))) Q:H('+L)=L S F(A,H('L))=C(H(W[(W\S))) 
F U=Q:Q:P W !,R F V=Q:Q:P+F W $S(F(V,U):'Q,Q:$C(P_(W\S))) W:'(V#F) $C('N_F_F+F) 
W !!,R(F)_C_R(P)_D_R(P)_E_R(F) X $RE($E($T(Q),Q+F,P+Q))_R(P)_'N W # G:N=L Q+F Q 

看起来好像没有文字!

此输出二进制时钟:

:D Q^ROU 


|..|..|..| 
|..|..|.0| 
|..|.0|0.| 
|..|00|..| 

00:13:24 
0

这里的 “世界你好”:

w "Hello world!",!

wwrite的缩写 - 要么是可以接受的,但缩写放逐更加地道。字面!是一个换行符。

这里有一个斐波那契实现,首先没有缩写然后用

innerFibonacci(value,cache) . if cache(value)'="" quit cache(value) . set cache(value=$$innerFibonacci(value-1,cache)+$$innerFibonacci(value-2,cache) . quit cache(value) fibonacci(value) . new cache . set cache(0)=1 . set cache(1)=1 . quit $$innerFibonacci(value,cache)

下面是用更地道的缩写相同的事情:

innerFibonacci(value,cache) . i cache(value)'="" q cache(value) . s cache(value=$$innerFibonacci(value-1,cache)+$$innerFibonacci(value-2,cache) . q cache(value) fibonacci(value) . n cache . s cache(0)=1 . s cache(1)=1 . q $$innerFibonacci(value,cache)

现在 - 递归腮腺炎是一个漂亮的危险的事情 - 所以这可能很容易炸毁一个大的价值。

这里有一个小更“MUMPS-Y”的例子,一个实际利用流行性腮腺炎”单个数据结构,它基本上是一个排序后的数组其索引可以是数字或字符串。将这些数组前缀^保存到磁盘。 $这些东西都是内置在该语言中的函数。 q:quit命令的后置条件,意思是'如果人员等于'则退出'''。

这是没有的缩写,然后用:

peopleFoodCombinations(people,food) . new person . for set person=$order(people(person)) quit:person="" do . . set ^PEOPLE(person,"favoriteFood")=food(person) . quit

与abbrevs

现在:

peopleFoodCombinations(people,food) . n person . f s person=$o(people(person)) q:person="" d . . s ^PEOPLE(person,"favoriteFood")=food(person) . q