When: Monday, June 18, 2007 1:30 PM-3:00 PM (GMT-08:00) Pacific Time (US & = Canada). Where: 113/3181 Conference Room (Space may be limited) *~*~*~*~*~*~*~*~*~* You are invited to attend... please pass on to internal MS employees who ma= y be interested. ***************************************************************************= ************************** WHO: Prof. Karl Lieberherr AFFILIATION: Northeastern University TITLE: Structure-Shy Programming Revisited WHEN: Mon 6/18/2007 WHERE: 113/3181 Conference Room (Space may be limited) TIME: 1:30PM-3PM HOST: Wolfram Schulte/Ralf Lammel ***************************************************************************= *************************** ABSTRACT: Adaptive Programming (AP), developed as an extension to OO in the 90s, sepa= rates the concern of where to navigate on objects (WHERE-TO-GO) from the co= ncern of what to do during the navigation (WHAT-TO-DO). The history-based n= avigation abstractions provided by AP allow modifications to the underlying= object topology without affecting its associated computation. We call such= programs structure-shy because they withstand some changes to the underlyi= ng data-structure. Structure-shy programming (SSP), in different incarnati= ons, has recently gained widespread acceptance. The XML community has appli= ed these ideas to XPath and the Haskell community, through SYB, has studied= structure-shyness in the context of a modern statically typed, purely func= tional, programming language. In this talk we present four recent developm= ents in SSP all geared towards making SSP safer and more modular: (1) Demet= er Interfaces, (2) Functional Visitors, (3) a simpler semantics, called Tar= get Guarantee Semantics and (4) perobject and pertraversal variables to imp= rove the expressiveness of visitors. We will discuss the four developments = and sketch their efficient implementation with applications to C# programmi= ng and schema-aware XML processing. Joint work with: Bryan Chadwick, Thera= pon Skotiniotis and Ahmed Abdelmeged BIO: Karl Lieberherr started his research career in computer science as a theore= tical computer scientist, focusing on the theory of P-optimal algorithms fo= r the generalized maxiumum satisfiability problem (MAX-CSP), still an activ= e area of research. He also invented, independently and simultaneously on t= he other side of the Atlantic, an early form of non-chronological backtrack= ing based on learned clauses (superresolution) which has become a key featu= re of most state-of-the-art SAT and CSP solvers. In the mid 1980s, he switc= hed to his current research area: Object-Oriented and Aspect-Oriented Softw= are Development and focused on issues of software design and modularity. He= founded the Demeter research team, which studied the then-novel idea of Ad= aptive Programming, also known as structure-shy programming and produced th= e 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 and XAspec= ts. Dr. Lieberherr is a Professor in the College of Computer and Information Sc= ience at Northeastern University.