Object-oriented programming in Common LISP : a programmer's guide to CLOS
معرفی کتاب «Object-oriented programming in Common LISP : a programmer's guide to CLOS» نوشتهٔ Piethein Strengholt و Sonya E. Keene; contributions by Dan Gerson; foreword by David A. Moon، منتشرشده توسط نشر Addison-Wesley Professional در سال 1989. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
Preface Acknowledgements Contents List of Figures 1 Introduction to the CLOS Model 2 Elements of CLOS Programs 2.1 Classes and Instances 2.2 Slots 2.3 Superclasses 2.4 Generic Functions 2.5 Methods 2.6 Method Roles 2.7 The Controller of Inheritance 2.8 Summary of the CLOS Model 2.9 How CLOS Extends COMMON LISP 3 Developing a Simple CLOS Program: Locks 3.1 Overview of Locking 3.2 Defining the Kinds of Objects-Classes 3.3 Creating New Objects—Instances 3.4 Defining the Interface—Generic Functions 3.5 Defining the Implementation—Methods 3.6 Specializing the Behavior of Locks 3.7 Analyzing the Inheritance of Locks 3.8 Extending the Locking Program 3.9 How Client Programs Use Locks 3.10 Reviewing the Lock Classes 3.11 The External and Internal Perspectives 3.12 Guidelines on Designing Protocols 4 Programming with Methods 4.1 Implementation Choices: Methods versus Slots 4.2 Programming with Accessors 4.3 Multi-Methods 4.4 Methods for COMMON LISP Types 4.5 Methods for Individual LISP Objects 4.6 Summary of Method Inheritance 5 Controlling the Generic Dispatch 5.1 The Core Framework 5.2 Declarative and Imperative Techniques 5.3 Around-Methods 5.4 Calling a Shadowed Primary Method 5.5 Using a Different Method Combination Type 5.6 Built-in Method Combination Types 5.7 Defining a New Method Combination Type 5.8 Guidelines on Controlling the Generic Dispatch 5.9 Summary of the Generic Dispatch Procedur 5.10 Summary of the Standard Method Combination Type 6 Class Inheritance 6.1 Inheritance from Default Classes 6.2 The Class Precedence List 6.3 Guidelines on Designing Class Organizations 6.4 Inheritance of Slots and Slot Options 6.5 Guidelines on Using Inheritance of Slot Options 7 Defining CLOS Elements 7.1 Order of Defining CLOS Elements 7.2 Congruent Lambda-Lists 7.3 Lisp Objects Representing CLOS Elements 7.4 Mapping Between Names and Objects 7.5 Removing Generic Functions and Methods 8 Redefining CLOS Elements 8.1 Redefining Classes 8.2 Redefining Methods and Generic Functions 8.3 Example of Redefining CLOS Elements 8.4 Changing the Class of an Instance 9 Creating and Initializing Instances 9.1 Arguments to make-instance 9.2 Summary of What make-instance Does 9.3 Controlling Initialization with defclass Options 9.4 Controlling Initialization with Methods 9.5 Initialization Arguments 9.6 Constructors 10 A Procedural Definition: Initialization 10.1 Examples of Procedural Definitions 10.2 Isolating Work Shared Among Procedures 10.3 Filling Unbound Slots with Initforms 10.4 Performing Initialization by Initargs 10.5 Specializing a Portion of the Procedure 10.6 Declaring Initarg Names as Valid 11 Developing an Advanced CLOS Program: Streams 11.1 Overview of Streams 11.2 Design of Our Stream Foundation 11.3 Experimenting with the Stream Example 11.4 Directional Streams 11.5 Tape Streams 11.6 Disk Streams 11.7 Character Streams 11.8 Byte Streams 11.9 Instantiate Streams 11.10 A Procedural Definition for Creating Streams 11.11 Summary of Techniques Used in Streams 11.12 Documenting the Implementation of Streams 12 Highlights of CLOS 12.1 Designing a Standard Object-Oriented Paradigm 12.2 Summary of the Programmer Interface 12.3 Exploring Alternative Paradigms 12.4 A Nongoal: Automatic Protocol Support 12.5 The CLOS Metaobject Protocol Appendix A Glossary of CLOS Terminology Appendix B Syntax of CLOS Operators Appendix C CLOS Operators Not Documented in This Book Bibliography Index This book is an introduction to the CLOS model of object-oriented programming. CLOS, the Common Lisp Object System, is a newly designed object-oriented programming language that has evolved as a standard from various object-oriented extensions of the basic Lisp language. The language definition of CLOS comprises a set of tools for developing object-oriented programs in Common Lisp. The book serves two purposes: it is a practical guide to CLOS programming and stands as a tutorial teaching object-oriented techniques for software design and development
دانلود کتاب Object-oriented programming in Common LISP : a programmer's guide to CLOS