The Art of the Metaobject Protocol
M**R
clear writing for such advanced concepts - befitting Gerald Sussman's recommendation
Written by the hidden giants of the industry in consultation with many top notch developers and theorists. The meta-object protocol shows how to subtly contour languages from within to meet emerging needs.If you like SICP, you will enjoy this book which he recommended.
T**N
this book is a good guide to utilizing the common lisp object system in ...
this book is a good guide to utilizing the common lisp object system in common lisp.if you like lisp, you will like this. probably. not for those clojure guys on the jvm. this is real lisp.
D**D
Programmer request
Requested gift - enjoyed.
N**S
A classic, slightly dated.
This is powerful, but it's also dense and takes a lot of work to read.I'm a Ruby guy with a lot of metaprogramming experience... So to me this feels "obscured", but only because the vocabulary and conventions have changed a lot in 20 years. I don't think you *could* have explained these concepts better 20 years ago.It's powerful to see all the reasoning behind this -- in some ways it boils down to inheritance and hooks for the basic object-oriented processes themselves (slot and method inheritance order, generic method lookup). But it's nice to see a very different structure for this than, say, Ruby takes.
A**R
A non-lisper's opinion
Although I am mostly a C/C++ programmer, I still found this book to be an interesting read. If you, like me, have an interest in programming language design and implementation I highly recommend it. As other reviewers have noted, however, the book has little material for Lisp programmers who just want to use the MOP without looking under the hood. I don't consider this a shortcoming - understanding the design and implementation of your language and tools helps in using them effectively.
T**M
A Must if want to control your Object Inheritence Mechanisms
This book is the first so far to completely discuss the mechanisms of the Metaobject Protocol. This is an advanced treatment and will be of value to the experienced Lisp programmer. The book covers all aspects of the MOP in great detail and when the reader has finished it, he or she will be very comfortable with CLOS mechanisms, and even more importantly, why these features have been implemented in the ways that they have.
C**E
Authoritative, but less useful than it could be
As a presentation of how to implement the Metaobject Protocol, this is about as authoritative a presentation of CLOS as can exist, short of being a formal (dry!) standards document.Unfortunately, it falls way short in motivating the USE of the MOP. It shows how it is implemented, and has some examples of how to modify its behaviour. Which is wonderfully useful if your interest is in building your own implementation of MOP. It is not nearly so useful if you're trying to figure out how to apply it to less extraordinary purposes.To that end, Keene's book on CLOS, which demonstrates quite a number of usage examples, is a vital companion...
R**T
Highly recommended, but fell short of my expectations
This was a disappointing purchase for me, as I read some of the book on-line (in CMU-CL's "Encycmuclopedia") and was rather stunned at the beauty and possibilities of the MOP (which, in short, is defining the core object system itself in terms of the object system, allowing you to use the full power of the object system class hierarchy/relationships to control your object semantics). The book is a pretty straight forward implentation discussion, which is certainly nice as a case study in implementing such an interrelated system and boot-strapping the MOP into use, but it is only that. The MOP is one of those perfect ideas with such vast potential that I would much rather have seen actual expressions of that potential instead of mere inner working details. If I'd know that, I would not have bought it--but then neither will I be selling my copy.
B**H
Satisfied
Superb book
M**E
Read again after many years and still offers good insights into how to logically extend languages rather than ...
Read again after many years and still offers good insights into how to logically extend languages rather than add ever more compatible libraries that use different models. Python and Swift programmers can learn a lot about the fundamentals of the strength of these language designs from reading this. I do wonder whether the language designers might have read this...
ポ**ト
Metaobject Protocolの理念を知りたいならこれ!
残念ながら現在のCommon Lispの仕様には組み込まれていないMetaobject Protocolですが、Metaobject Protolを通して、クラスの定義や継承といった概念も抽象化した(Metaな)レベルから扱えるようにしようという理念はプログラミングをしていく中でまた新しい視点をもたらしてくれます。 また、Metaobject ProtocolはDefacto Standardと言っていいほど普通の処理系は実装しています。Closer to MOPという処理系同士のMOPの実装の差異を吸収するためのレイヤーライブラリも提供されています。 CLOSでプログラミングをしていて、もっと抽象的にクラスの定義や、スロットの参照を扱いたいなぁという場面が有ったときなどMOPを知っておくと差がつくと思います。また、MOPは「クラスの定義やインスタンスの生成の過程などをプログラマに公開して、プログラマが製作中のプログラムにより適したアルゴリズムでプログラムを書けるようにする」という物で効率的なCLOSのプログラムの開発にも役立つでしょう。
B**N
it is considered a classic so I'm glad I've at least read it
I found this book to be dry reading. I had a deep understanding of how object-oriented systems are implemented under-the-hood already and I didn't find much new in this book. Still, it is considered a classic so I'm glad I've at least read it.
Trustpilot
4 days ago
3 weeks ago