Frédéric Boussinot

dblp:71/5457 · DBLP profile ↗
← Back
7ranked-venue papers
6as first author
0since 2021 · last 2006
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 3 first-authorTheory of computation · 2 · 1 first-authorSystems, architecture and hardware · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Programming languages and type systems · 67% Compilers and program optimization · 13% Program analysis · 8%

Topics — the 5 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems › language semantics › formal semantics
operational semantics
0.011996
The SL Synchronous Language · IEEE Trans. Software Eng. 1996
Programming languages and type systems › domain-specific languages › synchronous languages
esterel
0.011991
The ESTEREL language · Proc. IEEE 1991
Program synthesis and code generation › formal synthesis
automata synthesis
0.011996
The SL Synchronous Language · IEEE Trans. Software Eng. 1996
Program analysis
symbolic execution
0.011996
The SL Synchronous Language · IEEE Trans. Software Eng. 1996
Program verification
reactive system verification
0.011991
The ESTEREL language · Proc. IEEE 1991

Methods — techniques the papers use, named apart from their topics

rewrite rules · 0.0formal semantics · 0.0
YearPublicationVenuePosition
2006 FairThreads: mixing cooperative and preemptive threads in C
abstract
Abstract FairThreads introduces fair threads which are executed in a cooperative way when linked to a scheduler, and in a preemptive way otherwise. Constructs exist for programming the dynamic linking/unlinking of threads during execution. Users can profit from the cooperative scheduling when threads are linked. For example, data only accessed by the threads linked to the same scheduler does not need to be protected by locks. Users can also profit from the preemptive scheduling provided by the operating system (OS) when threads are unlinked, for example to deal with blocking I/Os. In the cooperative context, for the threads linked to the same scheduler, FairThreads make it possible to use broadcast events. Broadcasting is a powerful, abstract, and modular means of communication. Basically, event broadcasting is made possible by the specific way threads are scheduled by the scheduler to which they are linked (the ‘fair’ strategy). FairThreads give a way to deal with some limitations of the OS. Automata are special threads, coded as state machines, which do not need the allocation of a native thread and which have efficient execution. Automata also give a means to deal with the limited number of native threads available when large numbers of concurrent tasks are needed, for example in simulations. Copyright © 2005 John Wiley & Sons, Ltd.
Frédéric Boussinot
Concurr. Comput. Pract. Exp.1
2004 Scheme fair threads
abstract
This paper presents Fair Threads, a new model for concurrent programming. This multi-threading model combines preemptive and cooperative scheduling. User threads execute according to a cooperative strategy. Service threads execute according to a preemptive strategy. User threads may ask services from service threads in order to improve performance by exploiting hardware parallelism and in order to execute non-blocking operations.Fair threads are experimented within the context of the functional programming language Scheme. This paper also presents the integration in this language. That is, it presents a semantics for Scheme augmented with Fair Threads and the main characteristics of the implementation.
Manuel Serrano, Frédéric Boussinot, Bernard P. Serpette
PPDP2
2000 Java threads and SugarCubes
abstract
SugarCubes is a set of Java classes which provides a simple and structured approach to concurrency. It offers a powerful and modular communication mechanism based on instantaneously broadcast events. The semantics of SugarCubes code is deterministic and does not depend on arbitrary choices made by the execution platform. SugarCubes gives programmers a sound and fine control over execution; for example, reactive instructions can be preempted in a completely clean way. The paper compares thread-based programming with SugarCubes programming. It shows that SugarCubes is simpler and more structured than the standard Java threading mechanism. Copyright © 2000 John Wiley & Sons, Ltd.
Frédéric Boussinot, Jean-Ferdinand Susini
Softw. Pract. Exp.1
1996 The SL Synchronous Language
abstract
We present SL, a new programming language of the synchronous reactive family in which hypotheses about signal presence/absence are disallowed. One can decide that a signal is absent during an instant only at the end of this instant, and so reaction to this absence is delayed to the next instant. Sources of causal circularities are avoided, while only weak preemption remains. A structural operational semantics is provided through rewrite rules, and an implementation is described. In addition to directly executing programs, this implementation can also be used to produce automata by symbolic evaluation.
Frédéric Boussinot, Robert de Simone
IEEE Trans. Software Eng.1
1991 The ESTEREL language
abstract
The authors present the basics of the ESTEREL reactive model of synchronous parallel systems. The ESTEREL programming style, based on instantaneous communications and decisions, is illustrated through the example of a mouse handler. The ESTEREL formal semantics is described, and it is shown how programs can be compiled into finite state sequential machines for efficient execution. The implementation is described with the ESTEREL environment, including simulation, and verification and validation tools. Some ESTEREL uses in various contexts are reported.>
Frédéric Boussinot, Robert de Simone
Proc. IEEE1
1991 Reactive C: An Extension of C to Program Reactive Systems
abstract
Abstract Reactive systems are interactive programs that react continuously to sequences of activations coming from the external world. Reactive programming leads to a new programming style where one programs in terms of reactions to activations and reasons in a logic of instants. This paper describes an extension of the C programming language called RC (for ‘Reactive C’) to program reactive systems. The language RC is described, then some programming examples are given to illustrate the reactive approach. The main RC notions come directly from the Esterel synchronous programming language. Finally, the Esterel and RC languages are compared.
Frédéric Boussinot
Softw. Pract. Exp.1
1982 Proposition de Semantique Denotationelle pour des Reseaux de Processus avec Operateur de Melange Equitable
Frédéric Boussinot
Theor. Comput. Sci.1