Towards Bridging the Gap between High-Level Reasoning and Execution on Robots