7.2.2 maneuver

Syntax

(maneuver traversal ...)

or

(do traversal ...)

Description

Execute a sequence of traversals in order. The maneuver succeeds if all of the traversals succeed. If any of them fail, then the entire maneuver is aborted and nothing happens. In other words, the maneuver has "all or nothing" semantics. To accept partial completion, use venture instead.

Examples

"Go forward, then up, and then forward again."

(symex-eval
  (symex-traversal
    (do (move forward)
        (move up)
        (move forward))))

"Go up and then keep going forward, and then go up again."

(symex-eval
  (symex-traversal
    (do (move up)
        (repeat (move forward))
        (move up))))