Teaching
Research
Papers
Presentations
NU PRL
About me
Wiki
Citations
IP
Old home page

A Short History: I started my research career in computer science as a theoretical computer scientist, focusing on the theory of P-optimal algorithms for the generalized maxiumum satisfiability problem (MAX-CSP), still an active area of research. I also invented, independently and simultaneously on the other side of the Atlantic, an early form of non-chronological backtracking based on learned clauses (superresolution) which has become a key feature of most state-of-the-art SAT and CSP solvers.

The work on P-optimal algorithms has been embedded in an exciting, fun but serious trading game, called the Specker Challenge Game (SCG) which is used both as a teaching innovation in software development and algorithm courses as well as as a driver and evaluator for algorithm innovations. The game creates artificial markets based on trading algorithmic challenges involving combinatorial optimization and decision problems.

Next I applied my theoretical knowledge to another practical problem: the design and implementation of the Hardware Description Language Zeus, a predecessor of VHDL.

In the mid 1980s, I switched to my current research area: Object-Oriented and Aspect-Oriented Software Development and focused on issues of software design and modularity. I founded the Demeter research team, which studied the then-novel idea of Adaptive Programming, also known as structure-shy programming and produced the Law of Demeter ("talk only to your friends": an explicit form of coupling control) and several systems for separating concerns in an object-oriented programming context: Demeter/Flavors, Demeter/C++, DemeterJ, DJ, XAspects. The new tool, DemeterF , adds the power of fine-grained type checking to control the evolution of functional, adaptive programs that can be easily re-targeted to different architectures, e.g. multi-core architectures.

In 2006 I added Systems Biology to my areas of interest. I spent my 2006 sabbatical at Novartis Institute for Biomedical Research and discovered that SAT and CSP solvers play an important role in biological applications.