The earliest work on agents may be traced at least to the ?rst conceptualization of the actor model by Carl Hewitt. In a paper in an AI conference in the early 1970s, Hewitt described actors as entities with knowledge and goals. Research on actors continued to focus on AI with the development of the Sprites model in which a monotonically growing knowledge base could be accessed by actors (inspired by what Hewitt called “the Scienti?c Computing Metaphor”). In the late1970sandwellinto 1980s,controversyragedinAIbetweenthosearguingfor declarative languages and those arguing for procedural ones. Actor researchers stood on the side of a procedural view of knowledge, arguing for an open s- tems perspective rather than the closed world hypothesis necessary for a logical, declarativeview. In the open systemsview,agentshad armslength relationships and could not be expected to store consistent facts, nor could the information in a system be considered complete (the “negation as failure” model). Subsequent work on actors, including my own, focused on using actors for general purpose concurrent and distributed programming. In the late 1980s, a number of actor languages and frameworks were built. These included Act++ (in C++) by Dennis Kafura and Actalk (in Smalltalk) by Jean-Pierre Briot. In recent times, the use of the Actor model, in various guises, has proliferated as new parallel and distributed computing platforms and applications have become common:clusters,Webservices,P2Pnetworks,clientprogrammingonmulticore processors, and cloud computing.