One drawback with both AGENT0 and PLACA is that the relationship between the logic and interpreted programming language is only loosely defined: in neither case can the programming language be said to truly execute the associated logic. The Concurrent METATEM language developed by Fisher can make a stronger claim in this respect [Fisher, 1994]. A Concurrent METATEM system contains a number of concurrently executing agents, each of which is able to communicate with its peers via asynchronous broadcast message passing. Each agent is programmed by giving it a temporal logic specification of the behaviour that it is intended the agent should exhibit. An agent's specification is executed directly to generate its behaviour. Execution of the agent program corresponds to iteratively building a logical model for the temporal agent specification. It is possible to prove that the procedure used to execute an agent specification is correct, in that if it is possible to satisfy the specification, then the agent will do so [Barringer et al., 1989].
The logical semantics of Concurrent METATEM are closely related to the semantics of temporal logic itself. This means that, amongst other things, the specification and verification of Concurrent METATEM systems is a realistic proposition [Fisher and Wooldridge, 1993]. At the time of writing, only prototype implementations of the language are available; full implementations are expected soon.