Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

lambda knights

Name: Anonymous 2010-02-19 1:59

Name: Anonymous 2010-02-19 14:03

>>16
CCL has its advantages too, especially on some platforms like Win32(compared to SBCL, whose support is stable, but not nearly as featureful as on *nix). That said, SBCL probably does MOP most correctly as its CLOS is a variant of PCL, and Closer-to-MOP ( http://common-lisp.net/project/closer/ ) confirms this behaviour. CCL's support isn't that shabby either: http://common-lisp.net/project/closer/repos/closer-mop/closer-mcl.lisp http://common-lisp.net/project/closer/repos/closer-mop/features.txt
>>17
How about TinyCLOS?  Kiczales did that one too (functional CLOS port to Scheme, less fancy macros than in CL, but in some places the author considers the MOP slightly better than in CL with regards to optimization possibilities), albeit his programming style may be more CLish than you'd prefer, YMMV.

http://community.schemewiki.org/?Tiny-CLOS

Name: >>18 2010-02-19 14:09

>>17
Unless I misunderstood your question, and you just want to learn CLOS in CL, then there's a few good books/tutorials:
Practical Common Lisp has some good chapters on general-purpose CLOS usage, and practical examples.
Keene 's Object-Oriented Programming in Common Lisp is another book which is mostly composed of practical examples of CLOS usage.
The Hyperspec talks about the more advanced features such custom method combinations which I haven't found discussed, however here's a simple tutorial: http://www.cawtech.demon.co.uk/clos/define-method-combination.html

As for the MOP and actually understanding CLOS inside out, there is no other book than the AMOP. I've found reading AMOP to be quite a nice read, the author shows implementing CLOS within CLOS and then he shows how to bootstrap the system. It also shows how the meta-object protocol is derived naturally while implementing it. The sample code is quite easy to read and understand if you follow the book.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List