Thomas Witte, Matthias Tichy (Ulm University)
We present a hybrid editor for quadcopter missions. A lua-based DSL is used to prototype simple quadcopter applications using an imperative API. To facilitate programming, a live preview of the flight is shown in rviz and can be manipulated through interactive markers; any changes are mirrored to the textual source. This WYSIWYG-style editing is non-trivial, if the underlying representation is not declarative or immutable at runtime. We work around this by tracking source locations through the execution of the imperative program, reversing the calculation of values and modifying literals, such that the program produces the desired preview.
Video presented at ROSCon 2019. More details and slides are available at: roscon.ros.org/2019/.