Gregor Kiczales is a professor in the Computer Science Department at the University of British Columbia. His work is directed at enabling programmers to write programs that, as much as possible, look like their design. He is best known for his work on aspect-oriented programming, and he led the Xerox PARC team that developed aspect-oriented programming and AspectJ. He is a co-author of "The Art of the Metaobject Protocol" and was one of the designers of the Common Lisp Object System (CLOS). In 2012 he was the recipient of the Dahl-Nygaard Senior Prize for his achievements in programming language design research.
Introduction to Systematic Program Design - Part 1