Abstract
Dijkstra argued long ago that the structure of programs should match that of their execution. This challenge is important but difficult for the kinds of fluid multiprocess programming required by even simple robotics problems. Among recognized paradigms applied to robotics [1], some express process structure more directly than others, but none easily encompasses the full range of process and control relationships needed to describe interesting behavior simply. The approach described here, structured concurrent programming, adopts a diverse set of process structures as primary language elements, with three consequences: (i) explicit process management via process ID?s goes the way of goto; (ii) previously disjoint programming paradigms are integrated more tightly than before; (iii) it becomes more feasible for textual programs to execute "in place" in a live programming environment.