PROGRAM Example6 IS INSTRUCTION TurnBackAndInfect IS TurnBack TryToInfect END TurnBackAndInfect INSTRUCTION TryToInfect IS IF next-is-enemy THEN infect END IF END TryToInfect INSTRUCTION TurnBack IS turnright turnright END TurnBack INSTRUCTION AdvanceIfPossible IS IF next-is-empty THEN move ELSE TryToInfect TurnBackAndInfect END IF END AdvanceIfPossible BEGIN WHILE true DO AdvanceIfPossible END WHILE END Example6