To support the creation and evolution of complex systems, dynamic languages provide support for reflection.
A reflective system contains a model of itself to enable runtime change: if we change the model, the system
changes and vice versa. Reflection allows the programmer to do any kind of change at runtime, even those that
render the system useless or breach any kind of security guarantees. Reflection is an established research
theme and has seen a lot of work over the last decades. The question of how to control reflection and related
that of secure reflective systems in general has not seen much research activity.
The goal of this PhD is to propose a new secure reflective language kernel for dynamic languages.
The following points should be explored:
- Study existing models of security.
- Study existing reflective systems and especially prior work on security and reflection.
- Propose a new, secure model of reflection.
- Implemented the model in a dynamic, object-oriented language.
- Jean-Baptiste Arnaud, Marcus Denker, Stéphane Ducasse, Damien Pollet, Alexandre Bergel, and Mathieu Suen.
Read-Only Execution for Dynamic Languages. In Proceedings of the 48th International Conference Objects, Models,
Components, Patterns (TOOLS'10), Malaga, Spain, 2010.
- Marcus Denker, Mathieu Suen, and Stéphane Ducasse. The Meta in meta-object architectures. In Proceedings of
TOOLS EUROPE 2008, volume 11 of LNBIP, pages 218–237, 2008.
- Oscar Nierstrasz, Alexandre Bergel, Marcus Denker, Stéphane Ducasse, Markus Gaelli and Roel Wuyts, “On the
Revival of Dynamic Languages,” Proceedings of Software Composition 2005, Thomas Gschwind and Uwe Aßmann (Eds.),
vol. 3628, LNCS 3628, 2005, pp. 1-13
- Mark S. Miller and Jonathan S. Shapiro. Paradigm Regained: Abstraction Mechanisms for Access Control. In Proceedings
of the 8th Asian Computing Science Conference, p. 224-242, 2003.
Skills and Profile
- You must hold a Master's in computer science, control engineering, mathematics,
scientific computation or an equivalent diploma.
- Nationality is not taken into consideration.
- Knowledge in programming language design
- Object-oriented programming with knowledge of Smalltalk
- Duration : 36 months – starting date of the contract : October 2012, 15th
- Salary: 1957,54 EUR the first two years and 2058,84 EUR the third year
Monthly salary after taxes: around 1597,11 EUR the 1st two years and 1679,76 EUR the 3rd year
(social security included).
- Possibility of French courses
- Help for housing
- Scientific Resident card and help for husband/wife visa