The Art of the Metaobject Protocol

by Gregor Kiczales, Daniel G. Bobrow, Jim Des Rivières

259 Members ½ (4.33)

On This Page

Description

The authors introduce this new approach to programming language design, describe its evolution and design principles, and present a formal specification of a metaobject protocol for CLOS. The CLOS metaobject protocol is an elegant, high-performance extension to the CommonLisp Object System. The authors, who developed the metaobject protocol and who were among the group that developed CLOS, introduce this new approach to programming language design, describe its evolution and design show more principles, and present a formal specification of a metaobject protocol for CLOS. Kiczales, des Rivir es, and Bobrow show that the "art of metaobject protocol design" lies in creating a synthetic combination of object-oriented and reflective techniques that can be applied under existing software engineering considerations to yield a new approach to programming language design that meets a broad set of design criteria. One of the major benefits of including the metaobject protocol in programming languages is that it allows users to adjust the language to better suit their needs. Metaobject protocols also disprove the adage that adding more flexibility to a programming language reduces its performance. In presenting the principles of metaobject protocols, the authors work with actual code for a simplified implementation of CLOS and its metaobject protocol, providing an opportunity for the reader to gain hands-on experience with the design process. They also include a number of exercises that address important concerns and open issues. show less

Tags

Recommendations

Member Reviews

Members

Recently Added By

Author Information

1 Work 259 Members
11 Works 321 Members
1 Work 259 Members

Common Knowledge

Original publication date
1991

Classifications

Genres
Technology, Nonfiction, General Nonfiction
DDC/MDS
005.133Computer science, information & general worksComputer science, knowledge & systemsArtificial Intelligence/Virtual RealitySoftware developmentComputer programmingSpecific programming languages
LCC
QA76.73 .C28 .K53ScienceMathematicsMathematicsInstruments and machinesCalculating machinesElectronic computers. Computer science
BISAC

Statistics

Members
259
Popularity
125,002
Rating
½ (4.33)
Languages
English
Media
Paper, Ebook
ISBNs
3