Garbage collection in an uncooperative environment
Software—Practice & Experience
No assembly required: compiling standard ML to C
ACM Letters on Programming Languages and Systems (LOPLAS)
A Practical Tutorial on Modified Condition/Decision Coverage
A Practical Tutorial on Modified Condition/Decision Coverage
Experimental Evaluation of the Variation in Effectiveness for DC, FPC and MC/DC Test Criteria
ISESE '03 Proceedings of the 2003 International Symposium on Empirical Software Engineering
A conservative extension of synchronous data-flow with state machines
Proceedings of the 5th ACM international conference on Embedded software
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Machine-Checked Sequencer for Critical Embedded Code Generator
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Use of formal methods for building qualified code generator for safer automotive systems
Proceedings of the 1st Workshop on Critical Automotive applications: Robustness & Safety
Non-Intrusive Structural Coverage for Objective Caml
Electronic Notes in Theoretical Computer Science (ENTCS)
ML dependency analysis for assessors
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
Hi-index | 0.01 |
This paper presents our feedback from the study on the use of Objective Caml for safety-critical software development tools implementation. As a result, Objective Caml is now used for the new ScadeTM certified embedded-code generator. The requirements for tools implementation are less strict than those for the embedded code itself. However, they are still quite demanding and linked to imperative languages properties, which are usually used for this kind of development. The use of Objective Caml is outstanding: firstly for its high level features (functional language of higher order, parametric polymorphism, pattern matching), secondly for its low level mechanisms needed by the runtime system (GC, exceptions). In order to develop the tools to check the safety-critical software development rules, it is necessary to reinterpret them for this language, and then to adapt Objective Caml so that it satisfies them. Thus, we propose a language restriction and a simplified runtime library in order that we can define and measure the coverage of a program written in Objective Caml according to the MC/DC criteria. Then we can look forward to seeing this kind of languages spread out the industrial environment, while raising the abstraction level in the conception and implementation of tools for certified programs production.