Microcontrollers are programmable integrated circuit embedded in multiple everyday objects. Due to their scarce resources, they often are programmated using low-level languages such as C or assembly languages. These languages don't provide the same abstractions and guarantees than higher-level programming languages, such as OCaml. This thesis offers a set of solutions aimed at extending microcontrollers programming with high-level programming paradigms. These solutions provide multiple abstraction layers which, in particular, enable the development of portable programs, free from the specifics of the hardware. We thus introduce a layer of hardware abstraction through an OCaml virtual machine, that enjoys the multiple benefits of the languag...
International audienceWe propose an abstraction to alleviate the difficulty of programming with thre...
Implementing a managed language efficiently is hard, and it is becoming more difficult as the c...
Programming embedded systems applications involve writing concurrent, event-driven and timing-aware ...
Les microcontrôleurs sont des circuits imprimés programmables nichés dans de nombreux objets de notr...
International audienceIn this paper, we present an approach for programming microcontrollers that pr...
International audienceMicrocontrollers are low-cost and energy efficient programmable integrated cir...
Considering the bytecode representation of a program written in a high-level programming language en...
The continuous proliferation of multicore architectures has placeddevelopers under great pressure to...
International audienceLes microcontrôleurs sont des circuits intégrés programmables dont le domaine ...
The prevailing abstractions for software are better suited to the traditional problem of computation...
Most critical systems are subject to hard real-time requirements. These systems are more and more co...
This PhD. Thesis defines a high-level language for programming real-time embedded control systems. I...
To achieve the best performance, most computer languages are compiled, either ahead of time and s...
Since 2005, chip manufacturers have stopped raising processor frequencies, which had been the primar...
Concurrent programming is notoriously difficult, especially in constrained embedded contexts. Threa...
International audienceWe propose an abstraction to alleviate the difficulty of programming with thre...
Implementing a managed language efficiently is hard, and it is becoming more difficult as the c...
Programming embedded systems applications involve writing concurrent, event-driven and timing-aware ...
Les microcontrôleurs sont des circuits imprimés programmables nichés dans de nombreux objets de notr...
International audienceIn this paper, we present an approach for programming microcontrollers that pr...
International audienceMicrocontrollers are low-cost and energy efficient programmable integrated cir...
Considering the bytecode representation of a program written in a high-level programming language en...
The continuous proliferation of multicore architectures has placeddevelopers under great pressure to...
International audienceLes microcontrôleurs sont des circuits intégrés programmables dont le domaine ...
The prevailing abstractions for software are better suited to the traditional problem of computation...
Most critical systems are subject to hard real-time requirements. These systems are more and more co...
This PhD. Thesis defines a high-level language for programming real-time embedded control systems. I...
To achieve the best performance, most computer languages are compiled, either ahead of time and s...
Since 2005, chip manufacturers have stopped raising processor frequencies, which had been the primar...
Concurrent programming is notoriously difficult, especially in constrained embedded contexts. Threa...
International audienceWe propose an abstraction to alleviate the difficulty of programming with thre...
Implementing a managed language efficiently is hard, and it is becoming more difficult as the c...
Programming embedded systems applications involve writing concurrent, event-driven and timing-aware ...