Synchronization During Java VM Initialization and Termination (2009)
Mathias Ricken, Robert Cartwright
The Java language supports concurrent programming using threads. Since thread scheduling is non-deterministic and a thread’s time slice may end at any time, access to shared data has to be...
Abstract Production Programming in the Classroom (2008)
Eric Allen, Robert Cartwright, Charles Reis
Students in programming courses generally write “toy” programs that are superficially tested, graded, and then discarded. This approach to teaching programming leaves students unprepared for...
A First-Class Approach to Java Genericity (2008)
Eric E. Allen, Jonathan Bannet, Robert Cartwright
We describe MixGen, a generalization of Generic Java in which all generic types are first-class: they can be used in any context where a conventional Java type can appear. The most interesting...
ABSTRACT Taming Java for the Classroom ∗ (2008)
James I. Hsia, Elspeth Simpson, Daniel Smith, Robert Cartwright
Java is the canonical language for teaching introductory programming, but its complex syntax and abundance of constructs are difficult for beginners to learn. This paper shows how object-oriented...
Domain Theory: An Introduction (2008)
Robert Cartwright, Rebecca Parsons
This monograph is an unauthorized revision of “Lectures On A Mathematical Theory
Abstract Type systems are designed to prevent the improper SOFT TYPING (2008)
use of program operations. They can be classified as either static or dynamic depending on when they de-tect type errors. Static type systems detect potential type errors at compile-time and prevent...
Report of a Workshop on Future Directions in Programming Languages and Compilers (2007)
May Purpose In, Robert Cartwright, Gilles Kahn Inria, Sophia Antipolis, Bernard Lang Inria, James Mcgraw, ...
This paper is the report of their findings. Its purposes are to explain the need for, and benefits of, research in this field--- both basic and applied; to broadly survey the various parts of the...
Report of a Workshop on Future Directions in Programming Languages and Compilers (2007)
May Purpose, Robert Cartwright, Gilles Kahn Inria, Sophia Antipolis, Bernard Lang Inria, James Mcgraw, ...
This paper is the report of their findings. Its purposes are to explain the need for, and benefits of, research in this field--- both basic and applied; to broadly survey the various parts of the...
Robert Cartwright, Gilles Kahn Inria, Sophia Antipolis, Bernard Lang Inria, James Mcgraw, Lawrence Livermore, ...
In January, 1993, a panel of experts in the area of programming languages and compilers met in a one and a half day workshop to discuss the future of research in that area. This paper is the report...
1.1 Summary of Previous Work: : : : : : : : : : : : : : : : : : : : : : : : : : : 2 (2007)
Robert Cartwright, Matthias Felleisen, Matthias Felleisen, Robert Cartwright Matthias
3.1 Using errors, programmers can observe the order of evaluation.: : : : : : : 10 3.2 Using control operators, programs can observe the order of evaluation.: : : 10 3.3 Procedure denotations contain...
Ramarao Kanneganti, Robert Cartwright, Robert Cartwright, Matthias Felleisen, Matthias Felleisen
A version of this report appears in the
Robert Cartwright, Guy L. Steele, Sun Microsystems Laboratories
The most serious impediment to writing substantial programs
Type systems are designed to prevent the improper use of program operations. They can be classified as either static or dynamic. Static type systems detect "ill-typed " programs at...
The Soundness of Component NextGen (2007)
James Sasitorn, Robert Cartwright
This technical report presents a type soundness proof for Core CGen, a small, formal language designed for studying the addition of a component system based on genericity to a nominally typed...
A First-Class Approach to Genericity (2003)
Eric Allen, Jonathan Bannet, Robert Cartwright
This paper describes how to add first-class generic types--- including mixins---to strongly-typed OO languages with nominal subtyping such as Java and C#. A generic type system is...
Mixins in Generic Java are Sound (2003)
Eric E. Allen, Jonathan Bannet, Robert Cartwright
This technical report presents a type soundness proof for Core MixGen, a small formal language designed for studying the addition of first-class genericity to Java. Core MixGen captures the most...
Recursive Programs as Functions in a First Order Theory. (2002)
Cartwright,Robert, McCarthy,John
Pure Lisp style recursive function programs are represented in a new way by sentences and schemata of first order logic. This permits easy and natural proofs of extensional properties of such...
Efficient Implementation of Run-time Generic Types for Java (2002)
Eric Allen, Eric Allen, Robert Cartwright, Robert Cartwright, Brian Stoler, Brian Stoler
Abstract: We describe an efficient compiler and run-time system for NextGen, a compatible extension of the Java programming language supporting run-time generic types designed by Cartwright and...
DrJava: A lightweight pedagogic environment for Java (2002)
Eric Allen Robert, Robert Cartwright, Brian Stoler
DrJava is a pedagogic programming environment for Java that enables students to focus on designing programs, rather than learning how to use the environment. The environment provides a simple...
Program Verification Through Soft Typing (1996)
Robert Cartwright, Matthias Felleisen
During the past 25 years, programming language researchers have developed increasingly sophisticated techniques for statically analyzing program behavior. These techniques have been widely used in...
Iterative Belief Revision in Extended Logic Programming (1996)
Jia-huai You, Robert Cartwright, Ming Li
Extended logic programming augments conventional logic programming with both default and explicit negation. Several semantics for extended logic programs have been proposed that extend the...
Program Verification Through Soft Typing (1996)
Robert Cartwright, Matthias Felleisen
Over the past 25 years, programming language researchers have developed increasingly sophisticated techniques for statically analyzing program behavior. These techniques have been widely used in...
Andrew Bernat, Robert Cartwright, Don Coleman, Roscoe Giles, Valerie Taylor, Ramon Vasquez-espinosa
The primary motivation for this workshop was the 1991-92 Taulbee survey published in the March 1993 issue of the Computing Research News. It indicated that less than 1 % of the PhDs in computer...
A practical soft type system for Scheme (1994)
Andrew K. Wright, Robert Cartwright
Soft type systems provide the benefits of static type checking for dynamically typed languages without rejecting untypable programs. A soft type checker infers types for variables and expressions and...
Extensible denotational language specifications (1994)
Robert Cartwright, Robert Cartwright, Matthias Felleisen, Matthias Felleisen
Abstract. Traditional denotational semantics assigns radically different meanings to one and the same phrase depending on the rest of the programming language. If the language is purely functional,...
Extensible Denotational Language Specifications (1994)
Robert Cartwright And, Robert Cartwright, Robert Cartwright, Matthias Felleisen, Matthias Felleisen
. Traditional denotational semantics assigns radically different meanings to one and the same phrase depending on the rest of the programming language. If the language is purely functional, the...
A Practical Soft Type System for Scheme (1994)
Andrew Wright, Robert Cartwright
Soft typing is a generalization of static type checking that accommodates both dynamic typing and static typing in one framework. A soft type checker infers types for identifiers and inserts explicit...
Fully abstract semantics for observably sequential languages (1994)
Robert Cartwright, Robert Cartwright, Pierre-louis Curien, Pierre-louis Curien, Matthias Felleisen, Matthias Felleisen
One of the major challenges in denotational semantics is the construction of a fully abstract semantics for a higher-order sequential programming language. For the past fifteen years, research on...
A practical soft type system for Scheme (1994)
Andrew K. Wright, Robert Cartwright
A soft type system infers types for the procedures and data structures of dynamically typed programs. Like conventional static types, soft types express program invariants and thereby provide...
Fully abstract semantics for observably sequential languages (1994)
Robert Cartwright, Robert Cartwright, Pierre-louis Curien, Pierre-louis Curien, Matthias Felleisen, Matthias Felleisen
One of the major challenges in denotational semantics is the construction of a fully abstract semantics for a higher-order sequential programming language. For the past fifteen years, research on...
What is a universal higherorder programming language (1993)
Ramarao Kanneganti, Robert Cartwright
Abstract. In this paper, we develop a theory of higher-order computability suitable for comparing the expressiveness of sequential, deterministic programming languages. The theory is based on the...
Observable sequentiality and full abstraction (1992)
Robert Cartwright, Matthias Felleisen
One of the major challenges in denotational semantics is the construction of fully abstract models for sequential programming languages. For the past fifteen years, research on this problem has...
The semantics of program dependence (1989)
Robert Cartwright, Matthias Felleisen
Optimizing and parallelizing compilers for procedural languages rely on various forms of program dependence graphs (pdgs) to express the essential control and data dependences among atomic program...
A Constructive Alternative to Axiomatic Data Type Definitions (1980)
Many computer scientists advocate using axiomatic methods (such as algebraic specification) to specify a program data domain - the universe of abstract data objects and operations manipulated by a...
A Constructive Alternative to Axiomatic Data Type Definitions (1980)
Many computer scientists advocate using axiomatic methods (such as algebraic specification) to specify a program data domain - the universe of abstract data objects and operations manipulated by a...
Cartwright, Robert, Oppen, Derek
We give a new version of Hoare's logic which correctly handles programs with aliased variables. The central proof rules of the logic (procedure call and assignment) are proved sound and complete.
Cartwright, Robert, Oppen, Derek
We give a new version of Hoare's logic which correctly handles programs with aliased variables. The central proof rules of the logic (procedure call and assignment) are proved sound and complete.
First Order Semantics: A Natural Programming Logic for Recursively Defined Functions (1978)
NO ABSTRACT SUPPLIED