In recent projects on operating-system verification, C and C++ data types are often formalized using a semantics that does not fully specify the precise byte encoding of objects. It is well-known that such an underspecified data-type semantics can be used to detect certain kinds of type errors. In general, however, underspecified data-type semantics are unsound: they assign well-defined meaning to programs that have undefined behavior according to the C and C++ language standards. A precise characterization of the type-correctness properties that can be enforced with underspecified data-type semantics is still missing. In this paper, we identify strengths and weaknesses of underspecified data-type semantics for ensuring type safety of low-l...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
Safety analysis is an algorithm for determining if a term in an untyped lambda calculus with constan...
In order to formally reason about low-level system programs one needs a semantics (for the programmi...
In order to formally reason about low-level system programs one needs a semantics (for the programmi...
This dissertation is a case study of type safety with respect to the C programming language. In shor...
The correctness of code-level implementations of software requires, among other things, the proper u...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Abstract. Our critical computing systems are coded in low-level, typeunsafe languages such as C, and...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Existing approaches for detecting type errors in unsafe languages are limited. Static analysis metho...
The low-level C++ programming language is ubiquitously used for its modularity and performance. Type...
AbstractRecent developments in the area of expressive types have the prospect to supply the ordinary...
Because of our increasing dependence on software in every aspect of our lives, it is crucial that ou...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
Safety analysis is an algorithm for determining if a term in an untyped lambda calculus with constan...
In order to formally reason about low-level system programs one needs a semantics (for the programmi...
In order to formally reason about low-level system programs one needs a semantics (for the programmi...
This dissertation is a case study of type safety with respect to the C programming language. In shor...
The correctness of code-level implementations of software requires, among other things, the proper u...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Abstract. Our critical computing systems are coded in low-level, typeunsafe languages such as C, and...
In this paper we propose a scheme that combines type inference and run-time checking to make existin...
Existing approaches for detecting type errors in unsafe languages are limited. Static analysis metho...
The low-level C++ programming language is ubiquitously used for its modularity and performance. Type...
AbstractRecent developments in the area of expressive types have the prospect to supply the ordinary...
Because of our increasing dependence on software in every aspect of our lives, it is crucial that ou...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
Safety analysis is an algorithm for determining if a term in an untyped lambda calculus with constan...