Doug Orleans's Ph.D. Thesis

My Ph.D. thesis is going to be about programming language support for separation of concerns. I am developing a language called Socrates that extends predicate dispatching with aspect-oriented features.

I submitted my thesis proposal to my Thesis Committee in April 2002. It is available as PS, PDF, DVI, or LATEX (with bibliography). My comprehensive exam took place on Wednesday, May 22; my presentation slides are available as PS, PDF, DVI, or LATEX.

Some history:

In October of 1998 I submitted my plan of study, entitled Exploratory Programming with Collaborative Programming Languages.

In summer of 2000 I wrote a thesis proposal entitled A Next-Generation Collaborative Programming Language, but before submitting it I decided I was probably biting off way more than I could chew, and needed to focus in on a narrower thesis that would be easier to defend.

In early 2001 I wrote a second thesis proposal, The Design and Implementation of Aspect-Oriented Languages. Once again, before submitting it I realized that this wasn't really thesis-quality, so I went back to the drawing board.

In October 2001 I wrote a paper about the relationship between AOP and predicate dispatching, Incremental Programming with Extensible Decisions, which appeared at the 1st International Conference on Aspect-Oriented Software Development (AOSD), April 22-26, 2002, Enschede, The Netherlands. My third attempt at writing a thesis proposal (which I never finished) was much the same as the submitted draft (also known as Northeastern Tech Report NU-CCS-02-01).

In February of 2002 I read Matthias Felleisen's paper from 1990, "On the Expressive Power of Programming Languages", which inspired my fourth attempt at writing a thesis proposal. I was talked out of this idea because it was too different from what I had been working on, too difficult to complete in the allotted time, and ultimately not useful or interesting enough for a thesis.

Some external links to interesting relevant projects:


Doug Orleans <dougo@place.org>
Last modified: Tue Mar 9 01:35:36 EST 2004