The INRIA RMoD Team led by S. Ducasse has an open position on traits.
End of the campaign : May 4, 2009
Beginning of the positions: from September to December 2009
INRIA, the national institute for research in computer science and
control, is dedicated to fundamental
and applied research in information and communication science and
technology (ICST). The Institute has a
workforce of 3,700, 2,900 of whom are scientists from INRIA and its
partner organizations. INRIA has
an annual budget of 162 million euros, 20% of which comes from its own
research contracts and
development products. INRIA develops many partnerships with industry
and fosters technology transfer
and company foundations in the field of ICST - some eighty companies
have been funded. Startups are
financed in particular by INRIA Transfert, a subsidiary of INRIA that
supports four startup funds.
The international collaborations are based on an incentive strategy of
welcoming and recruiting foreign
students as well as developing strong exchanges between research
scientists. Priority is given to geographic
zones with strong growth: Europe, Asia and North America while
cooperation with South America, Africa and Middle-East.
The goal of RMoD is to support remodularization of object-oriented
applications. This objective
is tackled from two complementary perspectives: reengineering and
modularity constructs for
programming languages. In the reengineering perspective we will
propose new analyses to understand
and restructure existing large applications (specialized package
metrics, adapted visualizations, layer
identifications). In the modularity construct context we will work on
a pure trait-based language and
new modular abstractions. We will also propose the definition of
dedicated secure language constructs
based on a modular and layered kernel as one direct application of
modularization. These programming
language constructs will be experimented on Pharo, a platform for
dynamic web development. Pharo
will be used as a testbed for a pure-traits language, which will be
used to assess the impact of modular
classes in terms of reuse orthogonally to inheritance.
Recently, traits have been proposed as a single inheritance backward
compatible solution in which the
composing entity has the control over the trait composition. Traits
are fine-grained units used to
compose classes, while avoiding many of inheritance and mixin-based
approaches. To evaluate the
expressiveness of traits, some hierarchies were refactored, showing
code reuse. However, such large
refactorings, while valuable, may not be facing all the problems,
since the hierarchies were previously
expressed within single inheritance and following certain patterns. In
addition traits have always been
considered in addition to class inheritance but not as the main
composition and reuse mechanism.
We are in the process of designing a pure traits based language. We
want to evaluate the impact of
having only traits as building blocks and removing inheritance from an
We expect the candidate to take part of the design of a pure traits-
based programming language,
to perform analysis on large piece of software for remodularisation
purposes and redesign a library.
We expect the candidate to implement the core of a pure trait-based
language and some representative
-have good skills in interpretation of object-oriented programming
languages (classbased, prototypes, mixins...)
- have an expertise in object-oriented programming languages outside
Java, C++ and C#
- be fluent in English
1 Alexandre Bergel, Stéphane Ducasse, Oscar Nierstrasz and Roel Wuyts,
Stateful Traits and their Formalization,
Journal of Computer Languages, Systems and Structures, 2008.
2 Damien Cassou, Stphane Ducasse and Roel Wuyts, Redesigning with
Traits: the Nile Stream trait-based Library,
International Conference on Dynamic Languages 2007, 2007, pp. 50-79.
3 Stéphane Ducasse, Oscar Nierstrasz, Nathanael Schaerli, Roel Wuyts
and Andrew Black, Traits: A Mechanism for
fine-grained Reuse, ACM Transactions on Programming Languages and
Systems (TOPLAS), vol. 28, no. 2, March 2006, pp. 331-388.
4 Luigi Liquori and Arnaud Spiwack, FeatherTrait: A Modest Extension
of Featherweight Java, ACM Transactions on
Programming Languages and Systems (TOPLAS), 2007, To appear.
5 Nathanael Schaerli, Stéphane Ducasse, Oscar Nierstrasz and Andrew
Black, Traits: Composable Units of Behavior,
Proceedings of European Conference on Object-Oriented Programming
(ECOOP'03), LNCS, vol. 2743, Springer Verlag, July 2003, pp. 248-274.
Applicant should have held a doctorate or Ph.D. for less than one year
or you are about to obtain one and you would like to carry out a
fulfilling research activity in the field of ICST (information and
communication science and technology) or in a related field.
2,357.30 EUR gross per month (Social security already payed)
SOCIAL SECURITY BENEFITS
- Entitled to unemployment benefit at the end of the contract;
- Affiliated to the French social security system.
HOW TO APPLY
Thank you for applying directly on the institute's website, by
following this link: =
Pharo-project mailing list
|Free forum by Nabble||Edit this page|