・ プログラムの実行結果をステップごとに取り消す

プログラムで作図したものを、UNDOで取り消したい場合、必要以上に後戻りしてしまうことがあります。
これを避けるためには、各ステップごとに
(command "UNDO" "M")
を置いておきます。
通常は、プログラムの開始処理としておいておきますが、繰り返し同じような処理を複数オブジェクトに対して行うような場合は、while 等のループの頭に置きます。

(command "UNDO" "BE")  (command "UNDO" "E")
で囲んでも良いのですが、必ずペアで使う必要があるので、エラーでこけたりすると心配なため、私は使っていません。