Introduction

In this guide we focus on the TeleoR extension of QuLog. TeleoR is a major extension of Nilsson's Teleo Reactive Procedures [2][3], a rule based language for programming robotic agents. We shall refer to Nilsson's language as T-R. T-R evolved from the triangular program plans of Shakey [4], the first AI robot developed by a team lead by Nilsson in the 1960s. Example extensions of T-R in TeleoR are: use of the mode/type system of QuLog so that the compiler can check that every rule determined robotic action will be fully instantiated and correctly typed, extra rule forms for more nuanced control of robot behaviour, high level control of multi-tasking with the fair alternating shared use of robotic resources by the different tasks achieved simply by declaring which TeleoR procedures may be invoked to start a task, and which are atomic. The latter may only be entered by a task when all the robotic resources they may need are available and no other task has been waiting longer for any of these resources. Once entered, the task has exclusive use of these resources whilst the procedure is active.

Subsections