📖 Overview
Gregor Kiczales is an influential American computer scientist and professor at the University of British Columbia. He is primarily known for developing aspect-oriented programming and creating AspectJ, an extension to the Java programming language, during his tenure at Xerox PARC.
At the core of Kiczales' contributions is his work on the Common Lisp Object System specification and his book "The Art of the Metaobject Protocol," co-authored with Jim Des Rivières and Daniel G. Bobrow. His research consistently focuses on improving software engineering practices by enabling programmers to write code that closely mirrors their design intentions.
Kiczales began his career at the MIT Lab for Computer Science in 1980 before joining Xerox PARC in 1984, where he eventually became Principal Scientist. After leaving PARC in 1999, he shifted his focus to computer science education, continuing to influence the field through academic research and teaching.
👀 Reviews
Readers value Kiczales' technical depth and ability to explain complex programming concepts. His most-discussed work, "The Art of the Metaobject Protocol," receives attention for its detailed exploration of object-oriented programming principles.
What readers liked:
- Clear explanations of advanced concepts
- Practical examples that demonstrate theoretical ideas
- Thorough treatment of metaobject protocols
- Code samples that illustrate key points
What readers disliked:
- Dense technical writing requires multiple readings
- Some examples dated by modern standards
- Limited accessibility for programming beginners
- High prerequisite knowledge requirements
On Goodreads, "The Art of the Metaobject Protocol" maintains a 4.29/5 rating from 126 readers. Readers note its value for understanding CLOS internals and metaclass programming. One reviewer states: "Changed how I think about OOP design, though requires significant Lisp experience to follow."
Amazon reviews (4.5/5 from 31 ratings) highlight the book's comprehensive coverage while noting its challenging nature for those without strong programming backgrounds.
📚 Books by Gregor Kiczales
The Art of the Metaobject Protocol (1991)
Co-authored with Jim Des Rivières and Daniel G. Bobrow, this technical work provides a comprehensive exploration of metaobject protocols using CLOS (Common Lisp Object System) as the primary example, detailing how to create extensible programming languages.
👥 Similar authors
Guy L. Steele Jr. created influential programming language specifications and wrote seminal works on Common Lisp and Scheme. His focus on language design and implementation parallels Kiczales' work on metaobject protocols and language extensions.
Richard P. Gabriel worked extensively on Lisp systems and wrote about software patterns and programming language evolution. His technical contributions at Lucid and Sun Microsystems align with Kiczales' emphasis on practical programming language development.
Daniel P. Friedman authored fundamental works on programming language theory and Scheme implementation. His books on recursive programming and language interpretation cover similar territory to Kiczales' exploration of metalevel architectures.
Erich Gamma developed design patterns methodology and contributed to Eclipse, which incorporates aspect-oriented programming concepts. His work on software architecture and extensible systems connects directly to Kiczales' AspectJ implementation.
Gerald Jay Sussman created the Structure and Interpretation of Computer Programs and pioneered work on programming language semantics. His contributions to computer science education and language design mirror Kiczales' later focus on teaching and language development.
Richard P. Gabriel worked extensively on Lisp systems and wrote about software patterns and programming language evolution. His technical contributions at Lucid and Sun Microsystems align with Kiczales' emphasis on practical programming language development.
Daniel P. Friedman authored fundamental works on programming language theory and Scheme implementation. His books on recursive programming and language interpretation cover similar territory to Kiczales' exploration of metalevel architectures.
Erich Gamma developed design patterns methodology and contributed to Eclipse, which incorporates aspect-oriented programming concepts. His work on software architecture and extensible systems connects directly to Kiczales' AspectJ implementation.
Gerald Jay Sussman created the Structure and Interpretation of Computer Programs and pioneered work on programming language semantics. His contributions to computer science education and language design mirror Kiczales' later focus on teaching and language development.