Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Gérard Boudol

dblp:31/2704 · DBLP profile ↗
← Back
42ranked-venue papers
33as first author
0since 2021 · last 2015
—ORCID · none

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

Theory of computation · 28 · 23 first-authorSoftware engineering, systems software and programming languages · 11 · 8 first-authorSecurity and privacy · 2Applied, 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
10 papers
Concurrent programming · 55% Programming languages and type systems · 43% Compilers and program optimization · 2%
Network and information security
2 papers
Web and mobile security · 82% Systems and software security · 18%
Computer architecture, parallel and distributed computing, and storage systems
3 papers
Distributed systems · 82% Parallel and multicore computing · 18%

Topics — the 20 heaviest of 23, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems › language semantics › formal semantics
operational semantics
0.332012
Reasoning about Web Applications: An Operational Semantics for HOP · ACM Trans. Program. Lang. Syst. 2012
Relaxed memory models: an operational approach · POPL 2009
Flow Models of Distributed Computations: Three Equivalent Semantics for CCS · Inf. Comput. 1994
Web and mobile security › browser security
same-origin policy
0.112012
Reasoning about Web Applications: An Operational Semantics for HOP · ACM Trans. Program. Lang. Syst. 2012
Concurrent programming
concurrency semantics
0.122010
Typing termination in a higher-order concurrent imperative language · Inf. Comput. 2010
Noninterference for Concurrent Programs · ICALP 2001
Programming languages and type systems
type theory
0.112010
Typing termination in a higher-order concurrent imperative language · Inf. Comput. 2010
Concurrent programming › concurrency bugs
data race freedom
0.112009
Relaxed memory models: an operational approach · POPL 2009
Concurrent programming › concurrency semantics
interleaving semantics
0.112009
Relaxed memory models: an operational approach · POPL 2009
Concurrent programming
memory models
0.112009
Relaxed memory models: an operational approach · POPL 2009
Concurrent programming › memory models
weak memory models
0.112009
Relaxed memory models: an operational approach · POPL 2009
Concurrent programming › concurrency theory
process calculi
0.132003
The receptive distributed pi-calculus · ACM Trans. Program. Lang. Syst. 2003
Flow Models of Distributed Computations: Three Equivalent Semantics for CCS · Inf. Comput. 1994
The Chemical Abstract Machine · POPL 1990
Programming languages and type systems
type systems
0.122003
The receptive distributed pi-calculus · ACM Trans. Program. Lang. Syst. 2003
The Pi-calculus in Direct Style · POPL 1997
Distributed systems › operating system support › interprocess communication
client-server communication
0.012012
Reasoning about Web Applications: An Operational Semantics for HOP · ACM Trans. Program. Lang. Syst. 2012
Programming languages and type systems
lambda calculus
0.031996
The Discriminating Power of Multiplicities in the Lambda-Calculus · Inf. Comput. 1996
Lambda-Calculi for (Strict) Parallel Functions · Inf. Comput. 1994
The Chemical Abstract Machine · POPL 1990
Systems and software security
information flow control
0.012001
Noninterference for Concurrent Programs · ICALP 2001
Programming languages and type systems › program manipulation
continuation-passing style
0.011997
The Pi-calculus in Direct Style · POPL 1997
Compilers and program optimization › program transformation › source-to-source transformation
CPS translation
0.011997
The Pi-calculus in Direct Style · POPL 1997
Concurrent programming › concurrency theory › process calculi
higher-order concurrency
0.011997
The Pi-calculus in Direct Style · POPL 1997
Concurrent programming › concurrency theory › process calculi
pi-calculus
0.011997
The Pi-calculus in Direct Style · POPL 1997
Programming languages and type systems › type inference
polymorphic type inference
0.011997
The Pi-calculus in Direct Style · POPL 1997
Parallel and multicore computing
parallel programming models
0.011994
Lambda-Calculi for (Strict) Parallel Functions · Inf. Comput. 1994
Concurrent programming › concurrency theory › process calculi
CCS
0.011990
The Chemical Abstract Machine · POPL 1990

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

type system · 0.5small-step operational semantics · 0.4type inference · 0.1static analysis · 0.1noninterference · 0.1reaction rules · 0.0operational semantics · 0.0
YearPublicationVenuePosition
2015 Jthread, a deadlock-free mutex library
abstract
We design a mutex library for Hop -- a dialect of Scheme which supports preemptive multithreading and shared memory -- that mixes deadlock prevention and deadlock avoidance to provide an easy to use, expressive, and safe locking function. This requires an operation to acquire several mutexes simultaneously, for which we provide a starvation-free algorithm. Choosing a formal definition of starvation-freedom leads us to identify the concept of asymptotic deadlock. Preliminary observations seem to show that our library has negligible impact on the performance of real-life applications. Our work could be applied to other languages such as Java.
Johan Grande, Gérard Boudol, Manuel Serrano
PPDP2
2012 Reasoning about Web Applications: An Operational Semantics for HOP
abstract
We propose a small-step operational semantics to support reasoning about Web applications written in the multitier language HOP. The semantics covers both server side and client side computations, as well as their interactions, and includes creation of Web services, distributed client-server communications, concurrent evaluation of service requests at server side, elaboration of HTML documents, DOM operations, evaluation of script nodes in HTML documents and actions from HTML pages at client side. We also model the browser same origin policy (SOP) in the semantics. We propose a safety property by which programs do not get stuck due to a violation of the SOP and a type system to enforce it.
Gérard Boudol, Zhengqin Luo, Tamara Rezk, Manuel Serrano
ACM Trans. Program. Lang. Syst.1
2010 A Theory of Speculative Computation
Gérard Boudol, Gustavo Petri
ESOP1
2010 Typing termination in a higher-order concurrent imperative language
Gérard Boudol
Inf. Comput.1
2009 A Deadlock-Free Semantics for Shared Memory Concurrency
Gérard Boudol
ICTAC1
2009 Relaxed memory models: an operational approach
abstract
Memory models define an interface between programs written in some language and their implementation, determining which behaviour the memory (and thus a program) is allowed to have in a given model. A minimal guarantee memory models should provide to the programmer is that well-synchronized, that is, data-race free code has a standard semantics. Traditionally, memory models are defined axiomatically, setting constraints on the order in which memory operations are allowed to occur, and the programming language semantics is implicit as determining some of these constraints. In this work we propose a new approach to formalizing a memory model in which the model itself is part of a weak operational semantics for a (possibly concurrent) programming language. We formalize in this way a model that allows write operations to the store to be buffered. This enables us to derive the ordering constraints from the weak semantics of programs, and to prove, at the programming language level, that the weak semantics implements the usual interleaving semantics for data-race free programs, hence in particular that it implements the usual semantics for sequential code.
Gérard Boudol, Gustavo Petri
POPL1
2009 On declassification and the non-disclosure policy
abstract
We address the issue of declassification in a language-based security approach. We introduce, in a Core ML-like language with concurrent threads, a declassification mechanism that takes the form of a local flow policy declaration. The computation in
Ana Gualdina Almeida Matos, Gérard Boudol
J. Comput. Secur.2
2008 Typing Safe Deallocation
Gérard Boudol
ESOP1
2008 On strong normalization and type inference in the intersection type discipline
Gérard Boudol
Theor. Comput. Sci.1
2007 Fair Cooperative Multithreading
Gérard Boudol
CONCUR1
2006 Shared-Variable Concurrency: A Proposal
Gérard Boudol
FSTTCS1
2005 On Declassification and the Non-Disclosure Policy
abstract
We address the issue of declassification in a language-based security approach. We introduce, in a Core ML-like language with concurrent threads, a declassification mechanism that takes the form of a local flow policy declaration. The computation in the scope of such a declaration is allowed to implement information flow according to the local policy. This dynamic view of information flow policies is supported by a concrete presentation of the security lattice, where the confidentiality levels are sets of principals, similar to access control lists. To take into account declassification, and more generally dynamic flow policies, we introduce a generalization of non-interference, that we call the non-disclosure policy, and we design a type and effect system for our language that enforces this policy.
Ana Gualdina Almeida Matos, Gérard Boudol
CSFW2
2005 On Typing Information Flow
Gérard Boudol
ICTAC1
2004 A Reactive Programming Model for Global Computing
Gérard Boudol
COORDINATION1
2004 ULM: A Core Programming Model for Global Computing: (Extended Abstract)
Gérard Boudol
ESOP1
2004 The recursive record semantics of objects revisited
abstract
In a call-by-value language, representing objects as recursive records requires using an unsafe fixpoint. We design, for a core language including extensible records, a type system which rules out unsafe recursion and still supports the construction of a principal type for each typable term. We illustrate the expressive power of this language with respect to object-oriented programming by introducing a sub-language for “mixin-based” programming.
Gérard Boudol
J. Funct. Program.1
2003 The receptive distributed pi-calculus
abstract
We study an asynchronous distributed π-calculus, with constructs for localities and migration. We show that a static analysis ensures the receptiveness of channel names, which, together with a simple type system, guarantees the message deliverability property. This property states that any migrating message will find an appropriate receiver at its destination locality. We argue that this distributed, receptive calculus is still expressive enough while allowing for an effective type inference à la ML.
Roberto M. Amadio, Gérard Boudol, Cédric Lhoussaine
ACM Trans. Program. Lang. Syst.2
2002 On message deliverability and non-uniform receptivity
Roberto M. Amadio, Gérard Boudol, Cédric Lhoussaine
Fundam. Informaticae2
2002 Noninterference for concurrent programs and thread systems
Gérard Boudol, Ilaria Castellani
Theor. Comput. Sci.1
2001 The Recursive Record Semantics of Objects Revisited
Gérard Boudol
ESOP1
2001 Noninterference for Concurrent Programs
Gérard Boudol, Ilaria Castellani
ICALP1
2000 On the semantics of the call-by-name CPS transform
Gérard Boudol
Theor. Comput. Sci.1
1999 An Interpretation of Extensible Objects
Gérard Boudol, Silvano Dal-Zilio
FCT1
1999 The Receptive Distributed pi-Calculus (Extended Abstract)
Roberto M. Amadio, Gérard Boudol, Cédric Lhoussaine
FSTTCS2
1999 A semantics for lambda calculi with resources
Gérard Boudol, Pierre-Louis Curien, Carolina Lavatelli
Math. Struct. Comput. Sci.1
1998 Calculi for concurrent processes
Gérard Boudol
J. Comput. Sci. Technol.1
1997 The Pi-calculus in Direct Style
abstract
We introduce a calculus which is a direct extension of both the λ and the π calculi. We give a simple type system for it, that encompasses both Curry's type inference for the λ-calculus, and Milner's sorting for the π-calculus as particular cases of typing. We observe that the various continuation passing style transformations for λ-terms, written in our calculus, actually correspond to encodings already given by Milner and others for evaluation strategies of λ-terms into the π-calculus. Furthermore, the associated sortings correspond to well-known double negation translations on types. Finally we provide an adequate CPS transform from our calculus to the π-calculus. This shows that the latter may be regarded as an "assembly language", while our calculus seems to provide a better programming notation for higher-order concurrency.
Gérard Boudol
POPL1
1996 The Discriminating Power of Multiplicities in the Lambda-Calculus
Gérard Boudol, Cosimo Laneve
Inf. Comput.1
1994 A Theory of Processes with Localities
abstract
Abstract We study a notion of observation for concurrent processes which allows the observer to see the distributed nature of processes, giving explicit names for the location of actions. A general notion of bisimulation related to this observation of distributed systems is introduced. Our main result is that these bisimulation relations, particularized to a process algebra extending CCS, are completely axiomatizable. We discuss in detail two instances of location bisimulations, namely the location equivalence and the location preorder.
Gérard Boudol, Ilaria Castellani, Matthew Hennessy, Astrid Kiehn
Formal Aspects Comput.1
1994 Lambda-Calculi for (Strict) Parallel Functions
Gérard Boudol
Inf. Comput.1
1994 Flow Models of Distributed Computations: Three Equivalent Semantics for CCS
Gérard Boudol, Ilaria Castellani
Inf. Comput.1
1993 The Lambda-Calculus with Multiplicities (Abstract)
Gérard Boudol
CONCUR1
1993 Observing Localities
Gérard Boudol, Ilaria Castellani, Matthew Hennessy, Astrid Kiehn
Theor. Comput. Sci.1
1992 A Theory of Process with Localities (Extended Abstract)
Gérard Boudol, Ilaria Castellani, Matthew Hennessy, Astrid Kiehn
CONCUR1
1992 The Chemical Abstract Machine
Gérard Berry, Gérard Boudol
Theor. Comput. Sci.2
1992 Graphical Versus Logical Specifications
Gérard Boudol, Kim G. Larsen
Theor. Comput. Sci.1
1991 Observing Localities (Extended Abstract)
Gérard Boudol, Ilaria Castellani, Matthew Hennessy, Astrid Kiehn
MFCS1
1990 The Chemical Abstract Machine
abstract
We introduce a new kind of abstract machine based on the chemical metaphor used in the Γ language of Banâtre & al. States of a machine are chemical solutions where floating molecules can interact according to reaction rules. Solutions can be stratified by encapsulating subsolutions within membranes that force reactions to occur locally. We illustrate the use of this model by describing the operational semantics of the TCCS and CCS process calculi. We also show how to extract a higher-order concurrent λ-calculus out of the basic concepts of the chemical abstract machine.
Gérard Berry, Gérard Boudol
POPL2
1988 Concurrency and Atomicity
Gérard Boudol, Ilaria Castellani
Theor. Comput. Sci.1
1985 Petri Nets and Algebraic Calculi of Processes
Gérard Boudol, Gérard Roucairol, Robert de Simone
STACS1
1984 Algèbre de Processus et Synchronisation
Didier Austry, Gérard Boudol
Theor. Comput. Sci.2
1983 Recursion Induction Principle Revisited
Gérard Boudol, Laurent Kott
Theor. Comput. Sci.1