Guarded Command Language
if {\displaystyle {\mbox{if}}} a ≥ b → m a x := a {\displaystyle a\geq b\rightarrow max:=a} [ ] a ≤ b → m a x := b {\displaystyle []\ a\leq b\rightarrow max:=b}
fi {\displaystyle {\mbox{fi}}}
a = b の場合、max の新たな値として a または b が選ばれるが、結果は同じである。しかし、実装によっては、一方がもう一方より性能的に有利だったり容易だったりする場合もある。プログラマから見れば違いはないので、いかようにも実装してよい。
どのガードも真でない場合: Abort と同じ
1つの G x {\displaystyle G_{x}} だけが真の場合、 S x {\displaystyle S_{x}} を実行
G x 0 . . . G x m {\displaystyle G_{x_{0}}\ ...\ G_{x_{m}}} がいずれも真の場合、任意の S x y {\displaystyle S_{x_{y}}} (ただし 0 ≤ y ≤ m {\displaystyle 0\leq y\leq m} )を実行