Connections 2007
 
Talk 5.6: 1:30PM–2:45PM

Session Name: Computer Architectures, Compilers and Programming Models
Session Time: 1:30PM–2:45PM
Author Name: Michael Gong
Author Email: mwgong@cs.utoronto.ca
Talk Title: ACC for System Development with AspeCt-oriented C
Slides: 5-6.ppt
Abstract: As a new programming methodology, Aspect-Oriented Programming (AOP) has been successfully applied to object-oriented languages, like Java or C++. AOP can encapsulate non-modularized concerns in systems, like security policies, transaction support, and synchronization concerns. However, it is still unclear how much benefits AOP can bring to procedural languages, like C. AspeCt-oriented C (ACC) is an aspect-oriented extension to C and enables aspect-oriented software development for C. ACC is ANSI C compatible and supports many gcc language extensions. ACC implements common AOP features, and introduces novel C-specific aspect-oriented features, like the capturing of calls through function pointers and the customizable throwing and catching of exceptions. ACC is open source and available from http://www.aspectc.net.
Research Group: Computer
Degree Program: M.A.Sc.
Author Bio: I obtained an Honors Bachelor Degree in Computer Science from the University of Toronto at Scarborough in May 2002. Then I worked as a full-time software developer in the C Compiler Front End team at IBM Toronto Software Lab until September 2005. I am currently pursuing a M.Sc. in the Department of Computer Science at the University of Toronto. My research interest lies in how AOSD (Aspect-Oriented Software Development) can help improve the modularity of C programs.