Articles on Scheme Programming Technology and related topics Published by Rice PLT Members

This archive contains freely available technical reports and published papers, as well as PhD dissertations, written by members of the Rice Programming Languages Team on Scheme programming technology and related topics.

Since Matthias Felleisen and some of his students moved from Rice University to Northeastern University in the summer of 2001, please see the Northeastern PLT Publications Page for recent publications by former members of Rice PLT.

Note: Some people have complained of problems when they try to read these documents in their Web browser (by just clicking on the links). This doesn't appear to be due an error in our server configuration, but rather due to browser misconfiguration. The documents should have a MIME content type of PostScript or DVI, as appropriate, and a content encoding of x-gzip. Browsers sometimes ignore the encoding. If you have this problem, please try to find someone who can help you configure the browser; until then, you can always save the documents to file first, uncompress them, and manually invoke the appropriate document browser.

Published Papers

OOPSLA 2001 Findler, Felleisen.
Contract Soundness for Object-Oriented Languages
PDF PS

FSE 2001 Findler, Latendresse, Felleisen.
Behavioral Contracts and Behavioral Subtyping
PDF

Monterey Workshop 2001 Clements, Graunke, Krishnamurthi, and Felleisen
Little Languages and their Programming Environments
PDF

JFP 2001 Findler, Clements, Flanagan, Flatt, Krishnamurthi, Steckler, and Felleisen.
DrScheme: A Programming Environment for Scheme
PS PDF

ESOP 2001 Clements, Flatt, Felleisen
Modeling an Algebraic Stepper
DVI   PS   PDF

ESOP 2001 Graunke, Krishnamurthi, Van der Hoeven and Felleisen
Programming the Web with High-Level Programming Languages
DVI   PS   PDF

WMF 2000 Steckler and A. Moreira, Universidade de Caxias do Sul, Brazil
Type-Based Locality Analysis
PS

Scheme and Functional Programming 2000 Steckler
Component Support in PLT Scheme (short presentation)
DVI   PS

PADL 2000 Krishnamurthi, Gray and Graunke
Transformation-by-Example for XML
abstract (no on-line version of paper due to copyright restrictions)

GCSE 99 Krishnamurthi, Felleisen and Duba
From Macros to Reusable Generative Programming
Technical Report

Flanagan and Felleisen (Journal of Functional Programming)
The Semantics of Future and an Application

ICFP 99 Flatt, Findler, Krishnamurthi and Felleisen
Programming Languages as Operating Systems (or, Revenge of the Son of the Lisp Machine)
DVI (sans screen dump)   PDF   PS

TOOLS 99 Steckler
MysterX: A Scheme Toolkit for Building Interactive Applications with COM
Copyright (C) 1999, IEEE
DVI   PS

ESOP 99 Krishnamurthi, Erlich and Felleisen
Expressing Structural Properties as Language Constructs
abstract (no on-line version of paper due to copyright restrictions)   slides (PowerPoint)

Flanagan and Felleisen (Transactions on Programming Languages and Systems)
Componential Set-Based Analysis
DVI   PS

OOPSLA 98 Robert Cartwright and Guy L. Steele Jr.
Compatible Genericity with Run-time Types for the JavaTM Programming Language
DVI   PS

LUGM 98 Flanagan and Felleisen
A New Way of Debugging LISP Programs
PS

FSE 98 Krishnamurthi and Felleisen
Toward a Formal Theory of Extensible Software
DVI   PS   Slides (PS, ledger)

ICFP 98 Findler and Flatt
Modular Object-Oriented Programming with Units and Mixins
DVI   PDF   PS   HTML   Code

ECOOP 98 Krishnamurthi, Felleisen and Friedman
Synthesizing Object-Oriented and Functional Design to Promote Re-Use
abstract   Technical Report

PLDI 98 Flatt and Felleisen
Units: Cool Modules for HOT Languages
DVI   PS

Felleisen, Findler, Flatt, and Krishnamurthi (Sigplan Notices: Functional Programming Column)
The DrScheme Project: An Overview. DVI   PDF   PS

POPL 98 Flatt, Krishnamurthi, and Felleisen
Classes and Mixins
DVI   PS (see full version)

Flatt, Krishnamurthi and Felleisen (Formal Syntax and Semantics of Java, LNCS 1523)
A Programmer's Reduction Semantics for Classes and Mixins
(expanded version of the POPL 98 paper, corrections in TR 97-293)

Wright and Cartwright (Transactions on Programming Languages and Systems)
A Practical Soft Type System for Scheme
PS

PLILP 97 Findler, Flanagan, Flatt, Krishnamurthi and Felleisen
DrScheme: A Pedagogic Programming Environment for Scheme
DVI (sans diagrams)   PS

PLDI 97 Flanagan and Felleisen
Componential Set-Based Analysis
DVI   PS

Cartwright and Felleisen (Computing Surveys)
Program Verification through Soft Typing
PS

Felleisen and Weeks (ALGOL-like Languages, Tennent (Ed.))
On the Orthogonality of Assignments and Procedures in Algol
PS

Ariola and Felleisen (Journal of Functional Programming)
The Call-by-Need Lambda-Calculus
PS

PLDI 96 Flanagan, Flatt, Krishnamurthi, Weirich and Felleisen
Catching Bugs in the Web of Program Invariants
DVI   PS

FPCA 95 Morrisett, Felleisen and Harper
Abstract Models of Memory Management
DVI   PS

POPL 95 Flanagan and Felleisen
The Semantics of Future and Its Use in Program Optimizations
DVI   PS

Wright (LISP and Symbolic Computation)
Simple Imperative Polymorphism
DVI   PS

Wright and Felleisen (Information and Computation)
A Syntactic Approach to Type Soundness
DVI   PS

Cartwright, Curien, and Felleisen (Information and Computation)
Fully Abstract Semantics for Observably Sequential Languages
DVI   PS

LFP 94 Wright and Cartwright
A Practical Soft Type System for Scheme
DVI   PS

PLDI 94 Sabry and Felleisen
Is Continuation-Passing Useful for Data Flow Analysis?
DVI   PS

TACS 94 Cartwright and Felleisen
Extensible Denotational Language Specifications
DVI   PS

SIPL 94 Sabry and Field
Reasoning about Explicit and Implicit Representations of State
DVI   PS

Sabry and Felleisen (LISP and Symbolic Computation)
Reasoning about Programs in Continuation-Passing Style
DVI   PS

Harper, Duba and MacQueen (Journal of Functional Programming)
Typing First-Class Continuations in ML
DVI   PS

ICALP 93 Kanneganti and Cartwright
What is a Universal Higher-Order Programming Language?
DVI   PS

PLDI 93 Sitaram
Handling Control
DVI   PS

PLDI 93 Flanagan, Sabry, Duba and Felleisen
The Essence of Compiling with Continuations
DVI   PS

POPL 93 Weeks and Felleisen
On the orthogonality of assignments and procedures in Algol
DVI   PS

Felleisen and Hieb (Theoretical Computer Science)
The revised report on the syntactic theories of sequential control and state
DVI   PS

POPL 92 Cartwright and Felleisen
Observable sequentiality and full abstraction
DVI   PS

REX 92 Kanneganti, Cartwright and Felleisen
SPCF: its model, calculus, and computational power
DVI   PS

LFP 92 Sabry and Felleisen
Reasoning about Programs in Continuation-Passing Style
DVI   PS

ESOP 92 Wright
Typing References by Effect Inference
DVI   PS

POPL 91 Duba, Harper and MacQueen
Typing First-Class Continuations in ML
DVI   PS

POPL 91 Crank and Felleisen
Parameter-Passing and the Lambda Calculus
DVI   PS

Felleisen (Science of Computer Programming)
On the Expressive Power of Programming Languages
DVI   PS

PLDI 91 Cartwright and Fagan
Soft Typing
DVI   PS

MFPS 91 Gateley and Duba
Call-by-Value Combinatory Logic and the Lambda-Value Calculus
DVI   PS

LFP 90 Sitaram and Felleisen
Reasoning with Continuations II: Full Abstraction for Models of Control
DVI   PS

LFP 90 (corrections) Sitaram and Felleisen
Reasoning with Continuations II: Full Abstraction for Models of Control, Two Corrections
DVI   PS

PLDI 89 Cartwright and Felleisen
The Semantics of Program Dependence
DVI   PS


Dissertations

Robby Findler
Behavioral Software Contracts
PDF (1.8 mb)   PS (4.9 mb)

Shriram Krishnamurthi
Linguistic Reuse
DVI   PS

Matthew Flatt
Programming Languages for Reusable Software Components
DVI   PS

Cormac Flanagan
Effective Static Debugging via Componential Set-Based Analysis
DVI (sans screen dumps)   PS

Amr Sabry
The Formal Relationship between Direct and Continuation-passing Style Optimizing Compilers: A Synthesis of Two Paradigms
DVI   PS

Andrew K. Wright
Practical Soft Typing
PS

Rama Kanneganti
Universal Domains for Sequential Computation
DVI   PS

Dorai Sitaram
Models of Control and Their Implications for Programming Language Design
DVI   PS

Mike Fagan
Soft Typing: An Approach to Type Checking for Dynamically Typed Languages
DVI   PS


Technical Reports

TR 01-372 Findler, Latendresse and Felleisen
Object-oriented Programming Languages Need Well-founded Contracts
PDF   PS

TR 00-366 Findler and Felleisen
Behavioral Interface Contracts for Java
PDF   PS

TR 00-364 Krishnamurthi, Felleisen and Duba
From Macros to Reusable Generative Programming
DVI   PS

TR 00-359 Felleisen and Steckler
Implementing a Static Debugger for a First-Order Functional Programming Language
[Revised March, 2001]
DVI   PS

TR 99-350 Clements, Krishnamurthi, Felleisen
Little Languages and their Programming Environments
PDF   PS

TR 99-346 Felleisen, Hanus, Thompson
Functional and Declarative Programming in Education
Directory

TR 98-299 Krishnamurthi, Felleisen and Friedman
Synthesizing Object-Oriented and Functional Design to Promote Re-Use
DVI   PS

TR 97-293 Flatt, Krishnamurthi and Felleisen (revised 6/99)
A Programmer's Reduction Semantics for Classes and Mixins
PDF   DVI   PS

TR 97-292 Krishnamurthi and Felleisen
Lecture Notes on the Principles of Programming Languages
DVI   PS

TR 96-266 Flanagan and Felleisen
Modular and Polymorphic Set-Based Analysis: Theory and Practice
DVI   PS

TR 95-254 Flanagan and Felleisen
Set-Based Analysis for Full Scheme and Its Use in Soft-Typing
DVI   PS

TR 94-239 Flanagan and Felleisen
Well-Founded Touch Optimization for Futures
DVI   PS

TR 94-238 Flanagan and Felleisen
The Semantics of Futures
DVI   PS

TR 93-219 Cartwright, Curien and Felleisen
Fully Abstract Semantics for Observably Sequential Languages
DVI   PS

TR 93-218 Wright and Cartwright
A Practical Soft Type System for Scheme
DVI   PS

TR 93-200 Wright
Polymorphism for Imperative Languages without Imperative Types
DVI   PS

TR 92-193 Weeks and Felleisen
On the orthogonality of assignments and procedures in Algol
DVI   PS

TR 92-180 Sabry and Felleisen
Reasoning about Programs in Continuation-Passing Style
DVI   PS

TR 91-167 Cartwright and Felleisen
Observable sequentiality and full abstraction
DVI   PS

TR 91-160 Wright and Felleisen
A Syntactic Approach to Type Soundness
DVI   PS

TR 89-100 Felleisen and Hieb
The revised report on the syntactic theories of sequential control and state
DVI   PS