Skip navigation

Leon S. Sterling

Leon S. Sterling is Director of eResearch and Chair of Software Innovation and Engineering at the University of Melbourne. He is the coauthor of The Art of Prolog (second edition, MIT Press, 1994) and the editor of The Practice of Prolog (MIT Press, 1990).

Titles by This Author

Today, when computing is pervasive and deployed over a range of devices by a multiplicity of users, we need to develop computer software to interact with both the ever-increasing complexity of the technical world and the growing fluidity of social organizations. The Art of Agent-Oriented Modeling presents a new conceptual model for developing software systems that are open, intelligent, and adaptive. It describes an approach for modeling complex systems that consist of people, devices, and software agents in a changing environment (sometimes known as distributed sociotechnical systems). The authors take an agent-oriented view, as opposed to the more common object-oriented approach. Thinking in terms of agents (which they define as the human and man-made components of a system), they argue, can change the way people think of software and the tasks it can perform. The book offers an integrated and coherent set of concepts and models, presenting the models at three levels of abstraction corresponding to a motivation layer (where the purpose, goals, and requirements of the system are described), a design layer, and an implementation layer. It compares platforms by implementing the same models in four different languages; compares methodologies by using a common example; includes extensive case studies; and offers exercises suitable for either class use or independent study.

Advanced Programming Techniques

This new edition of The Art of Prolog contains a number of important changes. Most background sections at the end of each chapter have been updated to take account of important recent research results, the references have been greatly expanded, and more advanced exercises have been added which have been used successfully in teaching the course.Part II, The Prolog Language, has been modified to be compatible with the new Prolog standard, and the chapter on program development has been significantly altered: the predicates defined have been moved to more appropriate chapters, the section on efficiency has been moved to the considerably expanded chapter on cuts and negation, and a new section has been added on stepwise enhancement -- a systematic way of constructing Prolog programs developed by Leon Sterling.All but one of the chapters in Part III, Advanced Prolog Programming Techniques, have been substantially changed, with some major rearrangements. A new chapter on interpreters describes a rule language and interpreter for expert systems, which better illustrates how Prolog should be used to construct expert systems. The chapter on program transformation is completely new and the chapter on logic grammars adds new material for recognizing simple languages, showing how grammars apply to more computer science examples.

Downloadable instructor resources available for this title: solution manual

Titles by This Editor

Addressed to readers at different levels of programming expertise, The Practice of Prolog offers a departure from current books that focus on small programming examples requiring additional instruction in order to extend them to full programming projects. It shows how to design and organize moderate to large Prolog programs, providing a collection of eight programming projects, each with a particular application, and illustrating how a Prolog program was written to solve the application. These range from a simple learning program to designing a database for molecular biology to natural language generation from plans and stream data analysis.

The 12th International Conference

13-16 June 1995, Tokyo, Japan

ICLP, which is sponsored by the Association for Logic Programming, is one of two major annual international conferences reporting recent research results in logic programming. Logic programming originates from the discovery that a subset of predicate logic could be given a procedural interpretation which was first embodied in the programming language, Prolog. The unique features of logic programming make it appealing for numerous applications in artificial intelligence, computer-aided design and verification, databases, and operations research, and for exploring parallel and concurrent computing. The last two decades have witnessed substantial developments in this field from its foundation to implementation, applications, and the exploration of new language designs.

Topics covered: Theoretical Foundations. Higher-Order Logics. Non-Monotonic Reasoning. Programming Methodology. Programming Environments. Extensions to Logic Programming. Constraint Satisfaction. Meta-Programming. Language Design and Constructs. Implementation of Logic Programming Languages. Compilation Techniques. Architectures. Parallelism. Reasoning about Programs. Deductive Databases. Applications.

Logic Programming series, Research Reports and Notes