Chronological List of All Papers

These papers range across several different areas. To see them classified, visit the listing by topic.

Assessing and Teaching Scope, Mutation, and Aliasing in Upper-Level Undergraduates
Kathi Fisler, Shriram Krishnamurthi, Preston Tunnell Wilson
ACM Technical Symposium on Computer Science Education
The Power of ‘‘Why’’ and ‘‘Why Not’’: Enriching Scenario Exploration with Provenance
Timothy Nelson, Natasha Danas, Daniel J. Dougherty, Shriram Krishnamurthi
Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering
Best Paper.
The Impact of a Single Lecture on Program Plans in First-Year CS
Francisco Enrique Vicente Castro, Shriram Krishnamurthi, Kathi Fisler
Koli Calling International Conference on Computing Education Research
Short Paper.
Can We Crowdsource Language Design?
Preston Tunnell Wilson, Justin Pombrio, Shriram Krishnamurthi
SPLASH Onward!
Error Messages Are Classifiers: A Process to Design and Evaluate Error Messages
John Wrenn, Shriram Krishnamurthi
SPLASH Onward!
User Studies of Principled Model Finder Output
Natasha Danas, Tim Nelson, Lane Harrison, Shriram Krishnamurthi, Daniel J. Dougherty
Software Engineering and Formal Methods
Teaching Programming Languages by Experimental and Adversarial Thinking
Justin Pombrio, Shriram Krishnamurthi, Kathi Fisler
Summit on Advances in Programming Languages
Inferring Scope through Syntactic Sugar
Justin Pombrio, Shriram Krishnamurthi, Mitchell Wand
ACM SIGPLAN International Conference on Functional Programming
Student Understanding of Aliasing and Procedure Calls
Preston Tunnell Wilson, Kathi Fisler, Shriram Krishnamurthi
SPLASH Education Symposium

On a (Per)Mission: Building Privacy Into the App Marketplace
Hannah Quay-de la Vallee, Paige Selby, Shriram Krishnamurthi
ACM CCS Workshop on Security and Privacy in Smartphones and Mobile Devices
Switches are Monitors Too!: Stateful Property Monitoring as a Switch Design Criterion
Tim Nelson, Nicholas DeMarinis, Timothy Adam Hoff, Rodrigo Fonseca, Shriram Krishnamurthi
ACM SIGCOMM Workshop on Hot Topics in Networks
Modernizing Plan-Composition Studies
Kathi Fisler, Shriram Krishnamurthi, Janet Siegmund
ACM Technical Symposium on Computer Science Education
The Sweep: Essential Examples for In-Flow Peer Review
Joe Gibbs Politz, Joseph M. Collard, Arjun Guha, Kathi Fisler, Shriram Krishnamurthi
ACM Technical Symposium on Computer Science Education

Exodus: Toward Automatic Migration of Enterprise Network Configurations to SDNs
Tim Nelson, Andrew D. Ferguson, Da Yu, Rodrigo Fonseca, Shriram Krishnamurthi
ACM SIGCOMM Symposium on SDN Research
Simon: Scriptable Interactive Monitoring for SDNs
Tim Nelson, Da Yu, Yiming Li, Rodrigo Fonseca, Shriram Krishnamurthi
ACM SIGCOMM Symposium on SDN Research
Transferring Skills at Solving Word Problems from Computing to Algebra Through Bootstrap
Emmanuel Schanzer, Kathi Fisler, Shriram Krishnamurthi, Matthias Felleisen
ACM Technical Symposium on Computer Science Education
Blocks Versus Text: Ongoing Lessons from Bootstrap
Emmanuel Schanzer, Shriram Krishnamurthi, Kathi Fisler
Blocks and Beyond Workshop
The Real Software Crisis: Repeatability as a Core Value
Shriram Krishnamurthi, Jan Vitek
Communications of the ACM
Viewpoint.
Detecting Latent Cross-Platform API Violations
Jeff Rasley, Eleni Gessiou, Tony Ohmann, Yuriy Brun, Shriram Krishnamurthi, Justin Cappos
IEEE International Symposium on Software Reliability Engineering
Static Differential Program Analysis for Software-Defined Networks
Tim Nelson, Andrew D. Ferguson, Shriram Krishnamurthi
International Symposium on Formal Methods
Slimming Languages by Reducing Sugar: A Case for Semantics-Altering Transformations
Junsong Li, Justin Pombrio, Joe Gibbs Politz, Shriram Krishnamurthi
SPLASH Onward!
The Racket Manifesto
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi, Eli Barzilay, Jay McCarthy, Sam Tobin-Hochstadt
Summit on Advances in Programming Languages
Hygienic Resugaring of Compositional Desugaring
Justin Pombrio, Shriram Krishnamurthi
ACM SIGPLAN International Conference on Functional Programming
Desugaring in Practice: Opportunities and Challenges
Shriram Krishnamurthi
ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation
Invited Talk.

In-Flow Peer Review
Dave Clarke, Tony Clear, Kathi Fisler, Matthias Hauswirth, Shriram Krishnamurthi, Joe Gibbs Politz, Ville Tirronen, Tobias Wrigstad
Conference on Innovation and Technology in Computer Science Education
CaptainTeach: Multi-Stage, In-Flow Peer Review for Programming Assignments
Joe Gibbs Politz, Daniel Patterson, Shriram Krishnamurthi, Kathi Fisler
Conference on Innovation and Technology in Computer Science Education
Type-Based Verification of Web Sandboxes
Joe Gibbs Politz, Arjun Guha, Shriram Krishnamurthi
Journal of Computer Security
In-Flow Peer-Review of Tests in Test-First Programming
Joe Gibbs Politz, Shriram Krishnamurthi, Kathi Fisler
SIGCSE International Computing Education Research Conference
Tierless Programming and Reasoning for Software-Defined Networks
Tim Nelson, Andrew D. Ferguson, Michael J. G. Scheer, Shriram Krishnamurthi
USENIX Symposium on Networked Systems Design and Implementation
Resugaring: Lifting Evaluation Sequences through Syntactic Sugar
Justin Pombrio, Shriram Krishnamurthi
ACM SIGPLAN Conference on Programming Language Design and Implementation

Participatory Networking: An API for Application Control of SDNs
Andrew D. Ferguson, Arjun Guha, Chen Liang, Rodrigo Fonseca, Shriram Krishnamurthi
ACM SIGCOMM Conference
Teaching Garbage Collection without Implementing Compilers or Interpreters
Gregory H. Cooper, Arjun Guha, Shriram Krishnamurthi, Jay McCarthy, Robert Bruce Findler
ACM Technical Symposium on Computer Science Education
TeJaS: Retrofitting Type Systems for JavaScript
Benjamin S. Lerner, Joe Gibbs Politz, Arjun Guha, Shriram Krishnamurthi
Dynamic Languages Symposium
Whalesong: Running Racket in the Browser
Danny Yoo, Shriram Krishnamurthi
Dynamic Languages Symposium
Combining Form and Function: Static Types for jQuery Programs
Benjamin S. Lerner, Liam Elberty, Jincheng Li, Shriram Krishnamurthi
European Conference on Object-Oriented Programming
Verifying Web Browser Extensions’ Compliance with Private-Browsing Mode
Benjamin S. Lerner, Liam Elberty, Neal Poole, Shriram Krishnamurthi
European Symposium on Research in Computer Security
Aluminum: Principled Scenario Exploration through Minimality
Tim Nelson, Salman Saghafi, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
International Conference on Software Engineering
Usable Security as a Static-Analysis Problem: Modeling and Reasoning About User Permissions in Social-Sharing Systems
Hannah Quay-de la Vallee, James M. Walsh, William Zimrin, Kathi Fisler, Shriram Krishnamurthi
SPLASH Onward!
A Balance of Power: Expressive, Analyzable Controller Programming
Tim Nelson, Arjun Guha, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
Workshop on Hot Topics in Software Defined Networks
From Principles to Programming Languages (and Back)
Shriram Krishnamurthi
ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Invited Talk.
Python: The Full Monty: A Tested Semantics for the Python Programming Language
Joe Gibbs Politz, Alejandro Martinez, Matthew Milano, Sumner Warren, Daniel Patterson, Junsong Li, Anand Chitipothu, Shriram Krishnamurthi
ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications
Bootstrap: Going Beyond Programming in After-School Computer Science
Emmanuel Schanzer, Kathi Fisler, Shriram Krishnamurthi
SPLASH Education Symposium

Toward a More Complete Alloy
Timothy Nelson, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
ABZ Conference
Web API Verification: Results and Challenges
Arjun Guha, Benjamin Lerner, Joe Gibbs Politz, Shriram Krishnamurthi
Analysis of Security APIs
A Tested Semantics for Getters, Setters, and Eval in JavaScript
Joe Gibbs Politz, Matt Carroll, Benjamin S. Lerner, Justin Pombrio, Shriram Krishnamurthi
Dynamic Languages Symposium
Semantics and Types for Objects with First-Class Member Names
Joe Gibbs Politz, Arjun Guha, Shriram Krishnamurthi
Foundations of Object-Oriented Languages
Features and Object Capabilities: Reconciling Two Visions of Modularity
Salman Saghafi, Kathi Fisler, Shriram Krishnamurthi
International Conference on Aspect-Oriented Software Development
Progressive Types
Joe Gibbs Politz, Hannah Quay-de la Vallee, Shriram Krishnamurthi
SPLASH Onward!
Participatory Networking
Andrew D. Ferguson, Arjun Guha, Jordan Place, Rodrigo Fonseca, Shriram Krishnamurthi
Workshop on Hot Topics in Management of Internet, Cloud, and Enterprise Networks and Services
Hierarchical Policies for Software Defined Networks
Andrew D. Ferguson, Arjun Guha, Chen Liang, Rodrigo Fonseca, Shriram Krishnamurthi
Workshop on Hot Topics in Software Defined Networks
Modeling and Reasoning about DOM Events
Benjamin S. Lerner, Matthew J. Carroll, Dan P. Kimmel, Hannah Quay-de la Vallee, Shriram Krishnamurthi
USENIX Conference on Web Application Development

Measuring the Effectiveness of Error Messages Designed for Novice Programmers
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
ACM Technical Symposium on Computer Science Education
Best Paper.
WeScheme: The Browser is Your Programming Environment
Danny Yoo, Emmanuel Schanzer, Shriram Krishnamurthi, Kathi Fisler
Conference on Innovation and Technology in Computer Science Education
Typing Local Control and State Using Flow Analysis
Arjun Guha, Claudiu Saftoiu, Shriram Krishnamurthi
European Symposium on Programming
Oops, I Did it Again: Mitigating Repeated Access Control Errors on Facebook
Serge Egelman, Andrew Oates, Shriram Krishnamurthi
SIGCHI Conference on Human Factors in Computing Systems
Do Values Grow on Trees?: Expression Integrity in Functional Programming
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
SIGCSE International Computing Education Research Workshop
Mind Your Language: On Novices’ Interactions with Error Messages
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
SPLASH Onward!
ADsafety: Type-Based Verification of JavaScript Sandboxing
Joe Gibbs Politz, Spiridon Aristides Eliopoulos, Arjun Guha, Shriram Krishnamurthi
USENIX Security Symposium

A Model of Triangulating Environments for Policy Authoring
Kathi Fisler, Shriram Krishnamurthi
ACM Symposium on Access Control Models and Technologies
Invited to Journal.
The Essence of JavaScript
Arjun Guha, Claudiu Saftoiu, Shriram Krishnamurthi
European Conference on Object-Oriented Programming
Measuring the Effectiveness of Error Messages Designed for Novice Programmers
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
Scheme and Functional Programming
On the Finite Model Property in Order-Sorted Logic
Timothy Nelson, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
Synthesis, Verification, and Analysis of Rich Models
The Margrave Tool for Firewall Analysis
Timothy Nelson, Christopher Barratt, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
USENIX Large Installation System Administration Conference
Please Continue to Hold: An Empirical Study of User Tolerance of Security Delays
Serge Egelman, David Molnar, Nicolas Christin, Alessandro Acquisti, Cormac Herley, Shriram Krishnamurthi
Workshop on the Economics of Information Security
Embracing Policy Engineering
Kathi Fisler, Shriram Krishnamurthi, Daniel J. Dougherty
Workshop on the Future of Software Engineering Research
Minding the (Semantic) Gap: Engineering Programming Language Theory
Arjun Guha, Shriram Krishnamurthi
Workshop on the Future of Software Engineering Research

Why Computer Science Doesn’t Matter
Matthias Felleisen, Shriram Krishnamurthi
Communications of the ACM
Viewpoint.
Using Static Analysis for Ajax Intrusion Detection
Arjun Guha, Shriram Krishnamurthi, Trevor Jim
International World Wide Web Conference
The Moby Scheme Compiler for Smartphones
Shriram Krishnamurthi
International Lisp Conference
Invited Paper.
Preference Aggregation in Group Recommender Systems for Committee Decision-Making
Jacob Baskin, Shriram Krishnamurthi
ACM Conference on Recommender Systems
Short Paper.
Trusted Multiplexing of Cryptographic Protocols
Jay McCarthy, Shriram Krishnamurthi
Formal Aspects of Security and Trust
Towards an Operational Semantics for Alloy
Theophilos Giannakopoulos, Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
International Symposium on Formal Methods
Escape From the Matrix: Lessons from a Case-Study in Access-Control Requirements
Kathi Fisler, Shriram Krishnamurthi
Symposium on Usable Privacy and Security
Poster Abstract.
Flapjax: A Programming Language for Ajax Applications
Leo A. Meyerovich, Arjun Guha, Jacob Baskin, Gregory H. Cooper, Michael Greenberg, Aleks Bromfield, Shriram Krishnamurthi
ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications
Best Student Paper.
A Functional I/O System
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
ACM SIGPLAN International Conference on Functional Programming
Invited to Journal.

Cryptographic Protocol Explication and End-Point Projection
Jay McCarthy, Shriram Krishnamurthi
European Symposium on Research in Computer Security
Declaring Victory in a Declarative Datacenter: Verification and Transferring Confidence
Shriram Krishnamurthi
Workshop on the Rise and Rise of the Declarative Datacentre
Invited Paper.
Minimal Backups of Cryptographic Protocol Runs
Jay McCarthy, Shriram Krishnamurthi
Formal Methods in Security Engineering
Teaching Programming Languages in a Post-Linnaean Age
Shriram Krishnamurthi
SIGPLAN Workshop on Undergraduate Programming Language Curricula
Decomposing Verification Around End-User Features
Kathi Fisler, Shriram Krishnamurthi
Verified Software: Theories, Tools, Experiments
Alchemy: Transmuting Base Alloy Specifications into Implementations
Shriram Krishnamurthi, Daniel J. Dougherty, Kathi Fisler, Daniel Yoo
ACM SIGSOFT International Symposium on the Foundations of Software Engineering

Relationally-Parametric Polymorphic Contracts
Arjun Guha, Jacob Matthews, Robert Bruce Findler, Shriram Krishnamurthi
Dynamic Languages Symposium
Obligations and their Interaction with Programs
Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
European Symposium on Research in Computer Security
Compiling Cryptographic Protocols for Deployment on the Web
Jay McCarthy, Joshua Guttman, John Ramsdell, Shriram Krishnamurthi
International World Wide Web Conference
The Design and Implementation of a Dataflow Language for Scriptable Debugging
Guillaume Marceau, Gregory H. Cooper, Jonathan P. Spiro, Shriram Krishnamurthi, Steven P. Reiss
Automated Software Engineering Journal
Implementation and Use of the PLT Scheme Web Server
Shriram Krishnamurthi, Peter Walton Hopkins, Jay McCarthy, Paul T. Graunke, Greg Pettyjohn, Matthias Felleisen
Higher-Order and Symbolic Computation
Composition with Consistent Updates for Abstract State Machines
Colin Gordon, Leo Meyerovich, Joel Weinberger, Shriram Krishnamurthi
International ASM Workshop
Lowering: A Static Optimization Technique for Transparent Functional Reactivity
Kimberley Burchett, Gregory H. Cooper, Shriram Krishnamurthi
ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation
Foundations of Incremental Aspect Model-Checking
Shriram Krishnamurthi, Kathi Fisler
ACM Transactions on Software Engineering and Methodology

Semantics and Scoping of Aspects in Higher-Order Languages
Christopher Dutchyn, David B. Tucker, Shriram Krishnamurthi
Science of Computer Programming
Interaction-Safe State for the Web
Jay McCarthy, Shriram Krishnamurthi
Scheme and Functional Programming
Specifying and Reasoning about Dynamic Access-Control Policies
Daniel J. Dougherty, Kathi Fisler, Shriram Krishnamurthi
International Joint Conference on Automated Reasoning
Towards Reasonability Properties for Access-Control Policy Languages
Michael Carl Tschantz, Shriram Krishnamurthi
ACM Symposium on Access Control Models and Technologies
Automata via Macros
Shriram Krishnamurthi
Journal of Functional Programming
Embedding Dynamic Dataflow in a Call-by-Value Language
Gregory H. Cooper, Shriram Krishnamurthi
European Symposium on Programming
Abstract Shade Trees
Morgan McGuire, George Stathis, Hanspeter Pfister, Shriram Krishnamurthi
Symposium on Interactive 3D Graphics
Modeling Web Interactions and Errors
Shriram Krishnamurthi, Robert Bruce Findler, Paul Graunke, Matthias Felleisen
Interactive Computation: The New Paradigm
Crossing State Lines: Adapting Object-Oriented Frameworks to Functional Reactive Languages
Daniel Ignatoff, Gregory H. Cooper, Shriram Krishnamurthi
International Symposium on Functional and Logic Programming

Continuations from Generalized Stack Inspection
Greg Pettyjohn, John Clements, Joe Marshall, Shriram Krishnamurthi, Matthias Felleisen
ACM SIGPLAN International Conference on Functional Programming
Modular Verification of Open Features Through Three-Valued Model Checking
Harry C. Li, Shriram Krishnamurthi, Kathi Fisler
Automated Software Engineering Journal
Verification and Change-Impact Analysis of Access-Control Policies
Kathi Fisler, Shriram Krishnamurthi, Leo A. Meyerovich, Michael Carl Tschantz
International Conference on Software Engineering
Web Verification: Perspective and Challenges
Shriram Krishnamurthi
Workshop on Automated Specification and Verification of Web Sites
Invited Paper.

Verifying Aspect Advice Modularly
Shriram Krishnamurthi, Kathi Fisler, Michael Greenberg
ACM SIGSOFT International Symposium on the Foundations of Software Engineering
A Dataflow Language for Scriptable Debugging
Guillaume Marceau, Gregory H. Cooper, Shriram Krishnamurthi, Steven P. Reiss
IEEE International Symposium on Automated Software Engineering
Invited to Journal.
Verifying Interactive Web Programs
Daniel R. Licata, Shriram Krishnamurthi
IEEE International Symposium on Automated Software Engineering
Parameterized Interfaces for Open System Verification of Product Lines
Colin Blundell, Kathi Fisler, Shriram Krishnamurthi, Pascal Van Hentenryck
IEEE International Symposium on Automated Software Engineering
Invited to Journal.
Validating the Unit Correctness of Spreadsheet Programs
Tudor Antoniu, Paul A. Steckler, Shriram Krishnamurthi, Erich Neuwirth, Matthias Felleisen
International Conference on Software Engineering
Building Little Languages with Macros
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Dr. Dobb’s Journal
Fostering Little Languages
John Clements, Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Dr. Dobb’s Journal
Automatically Restructuring Programs for the Web
Jacob Matthews, Robert Bruce Findler, Paul T. Graunke, Shriram Krishnamurthi, Matthias Felleisen
Automated Software Engineering Journal
The TeachScheme! Project: Computing and Programming for Every Student
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Computer Science Education
The Structure and Interpretation of the Computer Science Curriculum
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Journal of Functional Programming

The Feature Signatures of Evolving Programs
Daniel R. Licata, Christopher D. Harris, Shriram Krishnamurthi
IEEE International Symposium on Automated Software Engineering
Short Paper.
A Type System for Statically Detecting Spreadsheet Errors
Yanif Ahmad, Tudor Antoniu, Sharon Goldwater, Shriram Krishnamurthi
IEEE International Symposium on Automated Software Engineering
Automated Fault Localization Using Potential Invariants
Brock Pytlik, Manos Renieris, Shriram Krishnamurthi, Steven P. Reiss
International Workshop on Automated and Algorithmic Debugging
Short Paper.
Modeling Web Interactions
Paul T. Graunke, Robert Bruce Findler, Shriram Krishnamurthi, Matthias Felleisen
European Symposium on Programming
Pointcuts and Advice in Higher-Order Languages
David B. Tucker, Shriram Krishnamurthi
International Conference on Aspect-Oriented Software Development
The Semantics of Garbage Collection in OO Languages
Rob Hunter, Shriram Krishnamurthi
Foundations of Object-Oriented Languages
The CONTINUE Server
Shriram Krishnamurthi
Symposium on the Practical Aspects of Declarative Languages
Invited Paper.
SXSLT: Manipulation Language for XML
Oleg Kiselyov, Shriram Krishnamurthi
Symposium on the Practical Aspects of Declarative Languages
Traversing Recursive Object Structures: The Functional Visitor in Demeter
Pengcheng Wu, Shriram Krishnamurthi, Karl Lieberherr
Software-Engineering Properties of Languages for Aspect Technologies

Verifying Cross-Cutting Features as Open Systems
Harry C. Li, Shriram Krishnamurthi, Kathi Fisler
ACM SIGSOFT International Symposium on the Foundations of Software Engineering
Invited to Journal.
The Structure and Interpretation of the Computer Science Curriculum
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Functional and Declarative Programming in Education
Interfaces for Modular Feature Verification
Harry C. Li, Shriram Krishnamurthi, Kathi Fisler
IEEE International Symposium on Automated Software Engineering
Invited to Journal.
Advanced Control Flows for Graphical User Interfaces
Paul T. Graunke, Shriram Krishnamurthi
International Conference on Software Engineering
Programming Languages for Compressing Graphics
Morgan McGuire, Shriram Krishnamurthi, John F. Hughes
European Symposium on Programming
The Influence of Software Module Systems on Modular Verification
Harry C. Li, Kathi Fisler, Shriram Krishnamurthi
SPIN Workshop on Software Model Checking
DrScheme: A Programming Environment for Scheme
Robert Bruce Findler, John Clements, Cormac Flanagan, Matthew Flatt, Shriram Krishnamurthi, Paul Steckler, Matthias Felleisen
Journal of Functional Programming

Scalable Composition, Evolution and Verification Through Feature-Oriented Programming
Shriram Krishnamurthi, Kathi Fisler, Don Batory
Workshop on New Visions for Software Design and Productivity: Research and Applications
Automatically Restructuring Programs for the Web
Paul T. Graunke, Robert Bruce Findler, Shriram Krishnamurthi, Matthias Felleisen
IEEE International Symposium on Automated Software Engineering
Invited to Journal.
Modular Verification of Collaboration-Based Software Designs
Kathi Fisler, Shriram Krishnamurthi
Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering
Invited to Journal.
A Model Checking Framework for Layered Command and Control Software
Kathi Fisler, Shriram Krishnamurthi, Don S. Batory, Jia Liu
Monterey Workshop on Engineering Automation for Software Intensive System Integration
Little Languages and their Programming Environments
John Clements, Paul T. Graunke, Shriram Krishnamurthi, Matthias Felleisen
Monterey Workshop on Engineering Automation for Software Intensive System Integration
Programming Languages for Software Configuration
David B. Tucker, Shriram Krishnamurthi
International Workshop on Software Configuration Management
Verifying Component-Based Collaboration Designs
Kathi Fisler, Shriram Krishnamurthi, Don S. Batory
ICSE Workshop on Component-Based Software Engineering
Programming the Web with High-Level Programming Languages
Paul T. Graunke, Shriram Krishnamurthi, Steve van der Hoeven, Matthias Felleisen
European Symposium on Programming

Transformation-by-Example for XML
Shriram Krishnamurthi, Kathryn E. Gray, Paul T. Graunke
Symposium on the Practical Aspects of Declarative Languages

Implementing Extensible Theorem Provers
Kathi Fisler, Shriram Krishnamurthi, Kathryn E. Gray
International Conference on Theorem Proving in Higher-Order Logics: Emerging Trends
From Macros to Reusable Generative Programming
Shriram Krishnamurthi, Matthias Felleisen, Bruce F. Duba
International Symposium on Generative and Component-Based Software Engineering
Programming Languages as Operating Systems (or, Revenge of the Son of the Lisp Machine)
Matthew Flatt, Robert Bruce Findler, Shriram Krishnamurthi, Matthias Felleisen
ACM SIGPLAN International Conference on Functional Programming
Expressing Structural Properties as Language Constructs
Shriram Krishnamurthi, Yan-David Erlich, Matthias Felleisen
European Symposium on Programming
A Programmer’s Reduction Semantics for Classes and Mixins
Matthew Flatt, Shriram Krishnamurthi, Matthias Felleisen
Formal Syntax and Semantics of Java

Toward a Formal Theory of Extensible Software
Shriram Krishnamurthi, Matthias Felleisen
ACM SIGSOFT International Symposium on the Foundations of Software Engineering
Synthesizing Object-Oriented and Functional Design to Promote Re-Use
Shriram Krishnamurthi, Matthias Felleisen, Daniel P. Friedman
European Conference on Object-Oriented Programming
The DrScheme Project: An Overview
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
ACM SIGPLAN Notices
Classes and Mixins
Matthew Flatt, Shriram Krishnamurthi, Matthias Felleisen
ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages

DrScheme: A Pedagogic Programming Environment for Scheme
Robert Bruce Findler, Cormac Flanagan, Matthew Flatt, Shriram Krishnamurthi, Matthias Felleisen
International Symposium on Programming Languages: Implementations, Logics, and Programs

Catching Bugs in the Web of Program Invariants
Cormac Flanagan, Matthew Flatt, Shriram Krishnamurthi, Stephanie Weirich, Matthias Felleisen
ACM SIGPLAN Conference on Programming Language Design and Implementation

Avoiding Recomputation in Linkage Analysis
Alejandro Alberto Schäffer, Sandeep Kumar Gupta, K. Shriram, Robert W. Cottingham Jr
Human Heredity