Gregor Kiczales is a professor of computer science at the University of British Columbia in Canada. A professor is a senior teacher, lecturer and researcher, usually in a college or university. ... Wikibooks Wikiversity has more about this subject: School of Computer Science Open Directory Project: Computer Science Collection of Computer Science Bibliographies Belief that title science in computer science is inappropriate Categories: Computer science | Academic disciplines ... The University of British Columbia (UBC) is a university located on Point Grey near Vancouver, British Columbia, Canada. ...
His best known work is on Aspect-oriented programming and the AspectJ extension for Java at Xerox PARC. In Software Engineering, the programming paradigm of aspect-oriented programming (AOP) (also called aspect-oriented software development (AOSD)) attempts to aid programmers in the Separation of concerns, or the breaking down of a program into distinct parts that overlap in functionality as little as possible. ... AspectJ is an aspect-oriented extension to the Java programming language created at Xerox PARC. An AspectJ compiler weaves aspects into Java bytecode to implement crosscutting concerns. ... Java is an object-oriented programming language developed initially by James Gosling and colleagues at Sun Microsystems. ... Xerox Palo Alto Research Center (PARC) was a flagship research division of the Xerox Corporation, based in Palo Alto, California, USA. It was founded in 1970 and spun out as a separate company in 2002. ...
He has also contributed to the design of the Common Lisp Object System, and is the author of "The Art of the Metaobject Protocol", along with Jim Des Rivieres and Daniel G. Bobrow. The Common Lisp Object System, a powerful system for object_oriented programming which forms part of Common Lisp. ... Metaobject is any entity that exhibits some aspects of objects, like type, interface, class, methods, attributes, variables, functions, control structures and many more. ...
That irony isn't lost on GregorKiczales, principal scientist at Xerox's Palo Alto Research Center (PARC) and professor at the University of British Columbia in Vancouver—and he has a fix in mind.
Kiczales champions what he calls "aspect-oriented programming," a technique that will allow software writers to make the same kinds of shortcuts that those of us in other professions have been making for years.
Kiczales' proposed solution is to create a new category within a programming language called an "aspect." Aspects allow programmers to write, view and edit a crosscutting concern as a separate entity.
The paradigm of Aspect-Oriented Programming was first introduced in GregorKiczales et al., Aspect-Oriented Programming in Proceedings of the European Conference on Object-Oriented Programming (ECOOP 97), June 1997 ("Kiczalles"), which is hereby incorporated by reference.
In Kiczales, a new unit of software modularity, called an aspect, was provided that appears to provide a better handle on managing cross-cutting concerns.
In Kiczales, four highly domain-specific aspect-oriented systems had been developed: AML, RG, ETCML, and D. For each of these cases, a new language had to be created, and a new compiler had to be implemented.