<function>
<fname prototype="Normal Order / LEVEL: 0">
While
</fname>
<prototype>
LISP形式

(While exp1 exp2)

XML形式

<While>
	exp1
	exp2
</While>
</prototype>
<prototype>
C関数宣言
</prototype>
<explanation>
Forと反対に、まず、exp2を評価する。その評価結果をいったん保存し、exp1を評価する。exp1の評価結果が0であれば、保存されたexp2の保存結果を戻り値として返す。もし、exp1の評価結果が0以外であれば、再びexp2を評価する。 
</explanation>
</function>
