Operating systems and low-level applications are usually written in languages like C and assembly, which provide access to low-level abstractions. These languages have unsafe type systems that allow many bugs to slip by programmers. For example, in 1988, the Internet Worm exploited several insecure points in Unix including the finger command. A call to finger with an unexpected argument caused a buffer overflow, leading to the shutdown of most Internet traffic. A finger application written in a type-safe language would have prevented its exploit and limited the points the Internet Worm could attack. Such vulnerabilities are unacceptable in security-critical applications such as the secure coprocessors of the Marianas network, secStore key s...
International audienceThis paper formalizes the folklore result that strongly-typed applets are more...
Abstract—Programming languages have long incorporated type safety, increasing their level of abstrac...
The P4 programming language offers high-level, declarative abstractions that bring the flexibility o...
The architecture of traditional operating systems relies on address-based memory protection. To achi...
We present SafeDrive, a system for detecting and recovering from type safety violations in software ...
The increasing commoditization of computers in modern society has exceeded the pace of associated d...
ManuscriptWe report our experience in implementing type and memory safety in an efficient manner for...
Journal ArticleSensor network applications should be reliable. However, TinyOS, the dominant sensor ...
Many computing systems today are written in weakly typed languages such as C and C++. These language...
Most of the software that we depend upon, including operating systems, communication stacks, file sy...
AbstractWe present a general framework for provably safe mobile code. It relies on a formal definiti...
This paper is centered around the design of a thread- and memory-safe language, primarily for the co...
In this paper, we present THINK, our distributed systems architecture, and the research we have cond...
A vast amount of software, from low-level systems code to high-performance applications, is written ...
Linking is a low-level task that is usually vaguely specified, if at all, by language definitions. H...
International audienceThis paper formalizes the folklore result that strongly-typed applets are more...
Abstract—Programming languages have long incorporated type safety, increasing their level of abstrac...
The P4 programming language offers high-level, declarative abstractions that bring the flexibility o...
The architecture of traditional operating systems relies on address-based memory protection. To achi...
We present SafeDrive, a system for detecting and recovering from type safety violations in software ...
The increasing commoditization of computers in modern society has exceeded the pace of associated d...
ManuscriptWe report our experience in implementing type and memory safety in an efficient manner for...
Journal ArticleSensor network applications should be reliable. However, TinyOS, the dominant sensor ...
Many computing systems today are written in weakly typed languages such as C and C++. These language...
Most of the software that we depend upon, including operating systems, communication stacks, file sy...
AbstractWe present a general framework for provably safe mobile code. It relies on a formal definiti...
This paper is centered around the design of a thread- and memory-safe language, primarily for the co...
In this paper, we present THINK, our distributed systems architecture, and the research we have cond...
A vast amount of software, from low-level systems code to high-performance applications, is written ...
Linking is a low-level task that is usually vaguely specified, if at all, by language definitions. H...
International audienceThis paper formalizes the folklore result that strongly-typed applets are more...
Abstract—Programming languages have long incorporated type safety, increasing their level of abstrac...
The P4 programming language offers high-level, declarative abstractions that bring the flexibility o...