Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
marc eaddy
[go: Go Back, main page]

marc eaddy

Marc Eaddy

Mailing address:
Department of Computer Science
Columbia University
500 W. 120th St., 450 CS Building
New York, NY 10027

Contact info:
eaddy [at] cs.columbia.edu
+1 212 939-7077
+1 212 666-0140 (fax)
603 CEPSR (office)

 

My name is Marc Eaddy, and I am a PhD student in the Computer Science Department at Columbia University. I work in the Languages and Compilers Research Group under Alfred Aho.  In a previous life, I developed virtual reality games, real-time stock market data applications, and the TV Guide Online Listings.

Research

My goal is to make software easier to develop and maintain by enabling architects, developers, and maintainers to better understand and modularize the concerns (e.g., requirements, features) of a program. When concerns are poorly modularized, programs become more complex, resulting in increased maintenance effort and defects. The inability to effectively modularize a concern is called the crosscutting concern problem—so named because the implementation of the concern is scattered across (crosscuts) the program structure. My research interest is to better understand—and try to solve—the crosscutting concern problem, thereby making programs easier to develop and maintain.

I'm interested in the following questions:

Active Projects

ConcernTagger - Concern Analysis for Java Programs info
ConcernTagger allows you to manually associate requirements, features, bugs, etc. (concerns) with Java code (types, methods, and fields) using drag-n-drop, right click, etc. It computes scattering metrics that measure the number of classes (CDC) and methods (CDO) involved in the implementation, and the distribution of lines across those classes (DOSC) and methods (DOSM).

ConcernTagger is based on the excellent ConcernMapper created by Martin Robillard and Fr?d?ric Weigand-Warr.

Wicca - Static and Dynamic Aspect-Oriented Programming for .NET info | slides | source
Wicca allows you to transform a .NET application using byte-code, source code, or breakpoint weaving at compile-time or runtime. It uses the Microsoft Debugger APIs to update the code of a running program.

Phx.Morph - Aspect-Oriented Programming for .NET doc | slides | source
Phx.Morph is a static weaver that enables Open Classes and Aspect-Oriented Programming for applications written in any .NET language. It uses Phoenix, Microsoft's industrial-strength back-end compiler infrastructure. It is capable of weaving very large programs (1.8 MLOCs) and is the first weaver for .NET to support updating the program's debug information.

Refereed Publications

Magazine Articles

Books

Invited Talks

Tool Demos

Posters

Technical Reports

Community

Mentoring

Teaching

TAing

Career

Curriculum Vitae
Research Statement
Teaching Statement
Job Talk [ PDF | PowerPoint 2003 | PowerPoint 2007 ]

Miscellaneous

My Thesis Proposal: Modeling, Measuring, and Modularizing Crosscutting Concerns
My Candidacy Exam [ paper list | slides ]
My Older Research and Class Projects

My Blog | Facebook | Photos | Videos | LinkedIn Profile
My Tron Costume from Halloween 2006
Dr. Morris Eaddy's Art (my dad)
Morris Eaddy (my brother)
Bart Berggren's Art
Richard Fett's Art

Abducted: How People Come to Believe They Were Kidnapped by Aliens
How NOT to use PowerPoint

This page was last updated on 10/22/07.