Postdoc "Advanced and extendable tools and virtual machines for debugging"

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Postdoc "Advanced and extendable tools and virtual machines for debugging"

Stéphane Ducasse

Hello,

we have an open post-doc position in the RMoD team, Inria Lille - Nord Europe on the following topic:

Advanced and extendable tools and virtual machines for debugging.


Level of qualifications required : PhD or equivalent

Starting date : ASAP

Duration of contract : 1 year, 6 months 

Town/city : Villeneuve d'Ascq 

Inria Center : CRI Lille - Nord Europe

To apply: https://jobs.inria.fr/public/classic/en/offres/2019-02204

Contact: 

Steven Costiou, [hidden email]

Stéphane Ducasse, [hidden email]


Please find the detailed job offer below and attached to this mail.

Best Regards, 

-----------
Steven Costiou 
Researcher, RMoD/Inria
https://kloum.io/costiou/


=========Detailed job offer=========

Context

Debuggers are applications that users use to debug other applications. Lots of tools provide users with a large variety of debugging capabilities. However several aspects of the debugging activity are poorly covered by scientific and technical state-of-the-art. For example, it is still very hard to debug concurrent or parallel systems.

It is also not very clear how to implement advanced debugging tools such as back-in-time debuggers, or what support should a run-time infrastructure (e.g., a virtual machine) provide for advanced debugging.

Finally, often tools are inflexible and cannot be adapted to specific domain or projects. New generation tools should not only support the developers customising tools to their own workflow and domain, but also be dynamically activated even if the virtual machine does not support them. Therefore, virtual machines should also be extendable with new, user-defined primitives and support for debugging.

Results will be submitted to international conferences and journals and an effort will be put to produce systems that can be used by (normal) developers so that user experiences provide real data.

The work will happen in collaboration between Inria Lille (RMOD team) and Vrije Universitat Brussels (SOFT lab).


Assignment

Objectives
The goal of this Postdoc is to build new advanced debuggers to explore and experiment one or more of the following topics:


Back-in-time and scriptable debuggers

  • How to build back-in-time debuggers?
  • What abstractions do we need to take advantage of back-in-time debuggers? (scripting, DSLs…)
  • How can users extend, customise and enhance their debugger? 

    (following PhD of A. Chis on Moldable Tools and the work of T. Dupriez on scriptable debuggers)

Extendable virtual machines for advanced debugging support

  • What primitives do we need from the virtual machine to support advanced debugging tools? 

    (back-in-time debuggers, object-centric debuggers, etc.)
  • How can users create new debugging primitives and enable them on-demand when a particular bug happens and requires investigation without restarting the program?


Advanced debuggers for concurrency

  • How can we track specific objects in a concurrent execution and how this capability helps in debugging concurrent programs? 

    (following the PhD of S. Costiou on unanticipated object-centric debugging)
  • What are and how to express object-centric debugging queries on the flow of objects, shared by concurrent processes?
  • Can we leverage Dynamic Software Update techniques to safely instrument running concurrent programs with advanced debugging instrumentation?

    (following the PhD of P. Tesone on DSU for live and production environments)


Support for debugging tools

  • Can we use type inferencers to ease the design of debugging tools and limit their impact on performance and memory on dynamic languages runtimes?
    (following work on RoelTyper and PhD of L. Spoon on type inference)

References:

  1. Thomas Dupriez, Guillermo Polito, Steven Costiou, Vincent Aranega, and Stéphane Ducasse. 2019. Sindarin: a versatile scripting API for the Pharo debugger. In Proceedings of the 15th ACM SIGPLAN International Symposium on Dynamic Languages (DLS 2019).
  2. Pablo Tesone, Guillermo Polito, Noury Bouraqadi, Stéphane Ducasse, Luc Fabresse. Dynamic Software Update from Development to Production. The Journal of Object Technology, Chair of Software Engineering, 2018
  3. Steven Costiou, Mickaël Kerboeuf, Alain Plantec, and Marcus Denker. 2018. Collectors. In Conference Companion of the 2nd International Conference on Art, Science, and Engineering of Programming (Programming'18 Companion).
  4. Matteo Marra, Elisa Gonzalez Boix, Steven Costiou, Mickaël Kerboeuf, Alain Plantec, Guillermo Polito, and Stéphane Ducasse. 2017. Debugging Cyber-Physical Systems with Pharo: An Experience Report. In Proceedings of the 12th edition of the International Workshop on Smalltalk Technologies (IWST '17).
  5. A. Chis, T.Girba, Tudor and O. Nierstrasz, The Moldable Debugger: A Framework for Developing Domain-Specific Debuggers, Software Language Engineering, 2014.
  6. Lienhard, Girba, Nierstrasz: Practical Object-Oriented Back-in-Time Debugging, Proceeding ECOOP '08.
  7. Proksch, Sebastian ; Lerch, Johannes ; Mezini, Mira : Intelligent Code Completion with Bayesian Networks. http://doi.acm.org/10.1145/2744200  ACM Transactions on Software Engineering and Methodology (TOSEM), 25 (1) 3:1-3:31. 2015
  8. C. Hofer, M. Denker and S. Ducasse, Design and Implementation of a Backward-In-Time Debugger, Node 06, 2006.
  9. S. A. Spoon and O. Shivers, Demand-Driven Type Inference with Subgoal pruning: Trading Precision for Scalability, Proceedings of ECOOP'04, 2004

Main activities

The plan is to:

  • Join the team work around debugging, that includes 3 researchers and 1 phd student
  • Survey the key developer activities
  • Define new model and enhance current
  • Realize prototypes, possibly using Pharo
  • Run validation with real end-users
  • Publish results in top venues

Skills

Technical skills and level required

  • OOP, TDD
  • Reflective programming
  • Program transformation

Language

  • English

Relational skills

  • Good team work skills

Other valued appreciated

  • Knowledge of the Pharo language is a plus
  • A strong interest about debugging and/or dynamic languages is also appreciated

Benefits package

  • Subsidized meals
  • Partial reimbursement of public transport costs
  • Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)
  • Possibility of teleworking (after 6 months of employment) and flexible organization of working hours
  • Professional equipment available (videoconferencing, loan of computer equipment, etc.)
  • Social, cultural and sports events and activities
  • Access to vocational training

Remuneration

Gross monthly salary (before taxes) : 2 653 


RMOD
====

The goal of RMoD is to support remodularization and development of modular object-oriented applications. We tackle this objective from two complementary perspectives: reengineering, and constructs for dynamic languages. In the context of languages, we revisit language concepts such as modules and composition; we are also working on a new generation of reflective systems. We experiment with these programming constructs using Pharo, an open source, reflective, object-oriented language. http://rmod.inria.fr

About the research centre or Inria department

The Inria Lille - Nord Europe Research Centre was founded in 2008 and employs a staff of 360, including 300 scientists working in sixteen research teams. Recognised for its outstanding contribution to the socio-economic development of the Hauts-De-France région, the Inria Lille - Nord Europe Research Centre undertakes research in the field of computer science in collaboration with a range of academic, institutional and industrial partners.

The strategy of the Centre is to develop an internationally renowned centre of excellence with a significant impact on the City of Lille and its surrounding area. It works to achieve this by pursuing a range of ambitious research projects in such fields of computer science as the intelligence of data and adaptive software systems. Building on the synergies between research and industry, Inria is a major contributor to skills and technology transfer in the field of computer science.



--------------------------------------------
Stéphane Ducasse
03 59 35 87 52
Assistant: Julie Jonas 
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley, 
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France


_______________________________________________
Esug-list mailing list
[hidden email]
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org