David Tarditi

Publication List Details

Period

1990 - 2009

Number

45

Co-Authors

MSR-TR-2006-51 This is a draft paper that is under submission. Please contact Galen Hunt for citation information. Sealing OS Processes to Improve Dependability and Security (2009)

Galen Hunt, Mark Aiken, Paul Barham, Manuel Fähndrich, Chris Hawblitzel, Orion Hodson, ...

On most modern operating systems, a process is a hardware-protected abstraction for executing potentially mutable code and data. Common features of processes include: dynamic code loading, dynamic...

An Overview of the Singularity Project 1 (2008)

Galen Hunt, James Larus, Martín Abadi, Mark Aiken, Paul Barham, Manuel Fähndrich, ...

Abstract. Singularity is a research project in Microsoft Research that started with the question: what would a software platform look like if it was designed from scratch with the primary goal of...

Abstract Measuring the Cost of Storage Management (2008)

David Tarditi

We study the cost of storage management for garbagecollected programs compiled with the Standard ML of New Jersey compiler. We show that the cost of storage management is not the same as the time...

An Overview of the Singularity Project 1 (2008)

Galen Hunt, James Larus, Martín Abadi, Mark Aiken, Paul Barham, Manuel Fähndrich, ...

Abstract. Singularity is a research project in Microsoft Research that started with the question: what would a software platform look like if it was designed from scratch with the primary goal of...

\Lambda (2008)

David Tarditi

In order to define the CPS transformation more formally, two alternative presentations are given. The first takes the form of a continuation semantics for the call-by-need language. The second...

Abstract Optimizing Memory Transactions (2008)

Tim Harris, Mark Plesko, Avraham Shinnar, David Tarditi

Atomic blocks allow programmers to delimit sections of code as ‘atomic’, leaving the language’s implementation to enforce atomicity. Existing work has shown how to implement atomic blocks over...

RETROSPECTIVE: ABSTRACT TIL: A Type-Directed, Optimizing Compiler for ML (2008)

David Tarditi, Greg Morrisett, Perry Cheng, Chris Stone

The goal of the TIL project was to explore the use of Typed Intermediate Languages to produce high-performance native code from Standard ML (SML). We believed that existing SML compilers were doing a...

Sealing OS Processes to Improve Dependability and Safety (2007)

Galen Hunt, Mark Aiken, Manuel Fähndrich, Chris Hawblitzel, Orion Hodson, James Larus, ...

In most modern operating systems, a process is a hardware-protected abstraction for isolating code and data. This protection, however, is selective. Many common mechanisms—dynamic code loading,...

Broad New OS Research: Challenges and Opportunities (2005)

Galen C. Hunt, James R. Larus, David Tarditi, Ted Wobber

Contemporary software systems are beset by problems that create challenges and opportunities for broad new OS research. To illustrate, we describe five areas where broad OS research could...

Integrating support for undo with exception handling (2004)

Avraham Shinnar, David Tarditi, Mark Plesko, Bjarne Steensgaard

One of the important tasks of exception handling is to restore program state and invariants. Studies suggest that this is often done incorrectly. We introduce a new language construct that integrates...

Marmot: an optimizing compiler for Java (1999)

Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, Erik Ruf, ...

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries...

Marmot: An Optimizing Compiler for Java (1999)

Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, Erik Ruf, ...

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries...

Marmot: An Optimizing Compiler for Java (1999)

Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, Erik Ruf, ...

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries...

AnO11ECompiler for Java (1999)

Bjarne Steensgaard And, Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, ...

The Marmot srmot is aresPE6 h platform forsrfiR1B1 the implementation of high level programming languages It currentlycompris6 an optimizing native-code compiler, runtimesmefi9B andlibraries for a...

Marmot: an optimizing compiler for Java (1999)

Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, Erik Ruf, ...

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries...

Marmot: an optimizing compiler for Java (1999)

Robert Fitzgerald, Robert Fitzgerald, Todd B. Knoblock, Todd B. Knoblock, Erik Ruf, Erik Ruf, ...

The Marmot system is a research platform for studying the implementation of high level programming languages. It currently comprises an optimizing native-code compiler, runtime system, and libraries...

Memory Subsystem Performance of Programs with Intensive Heap Allocation. (1998)

Diwan, Amer, Tarditi, David, Moss, Eliot

Heap allocation with copying garbage collection is a general storage management technique for modern programming languages. It is believed to have poor memory subsystem performance. To investigate...

Memory Subsystem Performance of Programs Using Copying Garbage Collection, (1998)

Diwan, Amer, Tarditi, David, Moss, Eliot

Heap allocation with copying garbage collection is believed to have poor memory subsystem performance. We conducted a study of the memory subsystem performance of heap allocation for memory...

Measuring the Cost of Storage Management, (1998)

Tarditi, David, Diwan, Amer

We study the cost of storage management for garbage-collected programs compiled with the Standard ML of New Jersey compiler. We show that the cost of storage management is not the same as the time...

Design and Implementation of Code Optimizations for a Type-Directed Compiler for Standard ML. (1997)

Tarditi, David

The trends in software development are towards larger programs, more complex programs, and more use of programs as 'component software'. These trends mean that the features of modern programming...

TIL: A Type-Directed Optimizing Compiler for ML. (1997)

Tarditi, David, Stone, Chris, Morrisett, Greg, Harper, Robert, Cheng, Perry

We describe a new compiler for Standard ML called TIL, that is based on four technologies: intensional polymorphism, tag-free garbage collection, conventional functional language optimization and...

TIL: A type-directed optimizing compiler for ML (1996)

David Tarditi, Greg Morrisett, Perry Cheng, Chris Stone, Robert Harper, Peter Lee

We describe a new compiler for Standard ML called TIL, that is based on four technologies: intensional polymorphism, tag-free garbage collection, conventional functional language optimization, and...

The TIL/ML Compiler: Performance and Safety through Types (1996)

Greg Morrisett, David Tarditi, Perry Cheng, Chris Stone, P. Cheng, Peter Lee, ...

Systems code requires both high performance and reliability. Usually, these two goals are at odds with each other. For example, to prevent kernel data structures from being over-written or read,...

TIL: A Type-Directed Optimizing Compiler for ML (1996)

David Tarditi, Greg Morrisett, Perry Cheng, Chris Stone, Robert Harper, Peter Lee

We describe a new compiler for Standard ML called TIL, that is based on four technologies: intensional polymorphism, tag-free garbage collection, conventional functional language optimization, and...

Design and Implementation of Code Optimizations for a Type-Directed Compiler for Standard ML (1996)

David Tarditi

Abstract The trends in software development are towards larger programs, more complex programs, and more use of programs as "component software. " These trends mean that the...

Memory-System Performance of Programs with Intensive Heap Allocation (1995)

Amer Diwan, David Tarditi, Eliot Moss

this paper appeared in the 21st Annual Symposium on Principles of Programming Languages.

TIL: A Type-Directed Optimizing Compiler for ML (1995)

David Tarditi, Greg Morrisett, Perry Cheng, Chris Stone, Robert Harper, Peter Lee

We describe a new compiler for Standard ML called TIL, that is based on four technologies: intensional polymorphism, tag-free garbage collection, conventional functional language optimization, and...

Memory-System Performance of Programs with Intensive Heap Allocation (1995)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection is a general storage­management technique for programming languages. It is believed to have poor memory­system performance. To investigate this, we...

TIL: A Type-Directed, Optimizing Compiler for ML (1995)

David Tarditi, Greg Morrisett, Perry Cheng, Chris Stone, Robert Harper, Peter Lee

The goal of the TIL project was to explore the use of Typed Intermediate Languages to produce high-performance native code from Standard ML (SML). We believed that existing SML compilers were doing a...

Memory System Performance of Programs with Intensive Heap Allocation (1995)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection 1s a general storage management technique for programming languages. It is believed to have poor memory system performance, To investigate this, we...

Memory subsystem performance of programs using copying garbage collection (1994)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection is believed to have poor memory subsystem performance. We conducted a study of the memory subsystem performance of heap allocation for memory...

Memory Subsystem Performance of Programs Using Copying Garbage Collection (1994)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection is believed to have poor memory subsystem performance. We conducted a study of the memory subsystem performance of heap allocation for memory...

Measuring the Cost of Storage Management (1994)

David Tarditi, Amer Diwan

We study the cost of storage management for garbage-collected programs compiled with the Standard ML of New Jersey compiler. We show that the cost of storage management is not the same as the time...

Measuring the Cost of Storage Management (1994)

David Tarditi, Amer Diwan

We study the cost of storage management for garbage-collected programs compiled with the Standard ML of New Jersey compiler. We show that the cost of storage management is not the same as the time...

Measuring the Cost of Storage Management (1994)

David Tarditi, Amer Diwan

We study the cost of storage management for garbagecollected programs compiled with the Standard ML of New Jersey compiler. We show that the cost of storage management is not the same as the time...

ML-Yacc User's Manual Version 2.2 (1994)

David Tarditi

Contents 1 Introduction 3 1.1 General : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 3 1.2 Modules : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 4 1.3 Error...

Memory Subsystem Performance of Programs Using Copying Garbage Collection (1994)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection is believed to have poor memory subsystem performance. We conducted a study of the memory subsystem performance of heap allocation for memory...

Call-by-need and Continuation-passing Style (1993)

Chris Okasaki, Peter Lee, David Tarditi

. This paper examines the transformation of call-by-need terms into continuation -passing style (CPS). It begins by presenting a simple transformation of call-by-need terms into program graphs and a...

Memory Subsystem Performance of Programs with Intensive Heap Allocation (1993)

Amer Diwan, David Tarditi, Eliot Moss

Heap allocation with copying garbage collection is a general storage management technique for modern programming languages. It is believed to have poor memory subsystem performance. To investigate...

The Full Cost of a Generational Copying Garbage Collection Implementation (1993)

David Tarditi, Amer Diwan

this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the Defense Advanced Research Projects Agency or the United...

No Assembly Required: Compiling Standard ML to C (1990)

David Tarditi, Peter Lee, Anurag Acharya

C has been used as a portable target language for implementing languages like Standard ML and Scheme. Previous efforts at compiling these languages to C have produced efficient code, but also...

Call-by-need and Continuation-passing Style

Chris Okasaki, Peter Lee, David Tarditi

. This paper examines the transformation of call-by-need terms into continuation -passing style (CPS). It begins by presenting a simple transformation of call-by-need terms into program graphs and a...