News
- We have two master topics Layers Identification and Diagnotisc and Flexible Modules for Dynamic Languages.
- We have an associated team named REMOOS funded by INRIA with SCG from University of Bern and Geodes from University of Montreal. Here is the 2008 Activity Report.
- Dynamic web development with Seaside A new free open-source Seaside book.
- Pharo is a new open-source Smalltalk!
- Pharo By Example is free and out!
- Squeak: Learn programming with Robots received two Awards and sold more than 2500 copies in 4 months. Now it is free and online"!
- Our book Object-Oriented Reengineering Patterns is free online
- Moose. Moose is a reengineering environment that allows one to understand and analyse object-oriented applications developed in Smalltalk, Java or C++.
Some presentations
Some Program and Organizing Committees
- ECOOP'2010, ESUG'2010, ICSM'2010, TOOLS'2010, WCRE'2009 (org), ESUG'2009, Models'2009, Tools'2009, SC'2009, CSMR'2008, LMO'2008, ICSM'2007, ECOOP'2005, ECOOP'2007, MODELS'2007, MODELS'2006, CSMR'2006, CSMR'2007, IDM'2005, IDM'2006, ICPC'2006, ICPC'2007, ESUG'2008, ESUG'2007
Research
My research statement is double: (1) How can we help companies to support the evolution and maintenance of their large applications and (2) how can we improve languages to better support evolution?Object-Oriented Reengineering
How can we support the maintenance and evolution of large industrial applications? This work includes non-exhaustively the following topics: duplicated code detection, version analysis, meta-modeling, remodularisation, program understanding, program visualization, reengineering platform and tools. We worked with Nokia, Daimler-Chrysler and Sema Group. Links: The Moose Reengineering Environment, Recast: Evolution of Object-Oriented Applications, FAMOOS, Cook.Valorisation: We are validating our research on large industrial case studies written in C++, Java, Smalltalk (and Cobol). If you are a company that want to benefit from our tools or know-how contact us.
Consulting: I have been consulting for Harman-Becker AG, Bedag AG and some small companies
Language Design
How can we improve languages to support evolution? We are working on the fundamental aspects of object-oriented languages (encapsulation, modules, namespaces, components, class composition...)- Components for Embedded Systems. We developed with ABB a component model for field devices (80 kram) in the Pecos IST project.
- With Traits we compose classes from groups of reusable groups of methods. Link: Traits. Valorisation: The language Scala developed at the EPFL incudes traits and it has been announced that PERL 6 will include traits. We are currently working on the integration of Traits in C#. Squeak 3.9 has now traits. Fortress the new languague for scientific computing developed at Sun Microsystems uses exclusively traits (see Dr Dobbs G. Steele interview -- DDJ April 2005, page 20). The DrDobbs Journal Excellence in Programming award this year was given to Guy Steele which is one of the designer of Fortress.
- Classboxes are modules that supports the extension of classes. Link: Classboxes.
Keywords
Software Engineering, Object-Oriented Programming, Language Design, Reengineering, Reverse Engineering, Program Understanding, Reflective Programming, Meta-Programming, MOP, Aspect-Oriented Programming, Modules, Frameworks, Design Patterns, Teaching OO, Traits, Classboxes Scheme, Smalltalk, Java, C#, Recast Project, FAMOOS Project, PECOS Project.
Coordinates
Pay attention my snail mail address is not where my office is. If you want to visit me check that page. Snail Mail Address:
40, avenue Halley,
Parc Scientifique de la Haute Borne,
Bât.A, Park Plaza
France
Tel:33 (0)3 20 43 42 56
Fax:33 (0)3 59 57 78 50