Presentations
Here are some presentations I have given, informative or otherwise.
Probabilistic, Modular and Scalable Inference of Typestate Specifications
The presentation of my PLDI 2011
paper of the same name.
Modular Typestate Checking for Concurrent Java
Programs My entry to
the 2009
OOPSLA Student Research Competition. In this competition, undergraduate
and graduate student in computer science give a presentation of their
research which includes a written submission, a poster, and finally a
short oral presentation. I was lucky enough to be selected the third place
winner, and for that I am quite excited. I have included my presentation
and my poster here.
Case Studies in Concurrent Object Protocols An
SSSG presentation about my experiences using my tools, NIMBY and Sync or Swim,
to specify and verify open-source Java programs.
Reducing STM Overhead with Access Permissions
A presentation given at IWACO 2009 on the paper
of the same name.
jStar Presentation from Separation Logic In the
course, "Current Research in Separation Logic," taught by John
Reynolds, I presented a paper by Dino Distefano and Matthew Parkinson
on jStar, an
automated separation logic prover for Java programs. Here are the
slides from that presentation.
Arkan∞id: Breaking Out of a Finite Space.
This talk was a presentation of my work given at
SIGBOVIK 2009. I presented
on a paper of the same name. It describes an infinite brick-breaking
game that you should download from my software
page.
Verifying the Correct Usage of Atomic Blocks and Typestate
This talk was a presentation of my work given at
OOPSLA 2008. It was the
presentation of our paper of the same name, which can be found on my
publications
page. It describes how we use access permissions, an alias control
technology similar to ownership or separation logic, to verify the
correct usage of object protocols in concurrent OO programs.
Relentless Parallelism The talk given to present my work
on Relentless Parallelism at
SIGBOVIK 2008, which took place
on April 6th, 2008.
Formal Methods in the Real World Guest lecture in Formal Models
of Software Systems, given on November 15, 2007.
A Programming Model For Failure-Prone, Collaborative Robots
A presentation given at the workshop on Software Development in Robotics (SDIR) 2007.
The GUnit Testing Harness: Achieving
Source Code Street Cred Presentation given at most distinguished
conference, SIGBOVIK '07
on April 1st, 2007.
Unit Testing: Philosophy and Tools
This presentation was given on February 1st, 2007 as a lecture in
a course at CMU
entitled,
Analysis of Software Systems taught by Jonathan
Aldrich. It discusses unit testing, when and why to use it,
the JUnit framework and EasyMock, a mock objects framework.
Failure Handling in a Modal Language
A presentation given on the current state of my research, as of
October 30, 2006. I am attempting to add some failure-handling
capabilities to Tom Murphy's ML5 language, a language with a modal
type system. This talk is approximately 45 minutes long.
A Survey of Race Detection Techniques
In the course
Analysis of Software Artifacts which I took in
the spring of 2006, my final project was a litterature survery which compared
different analysis techniques, static and dynamic, on their abilities to
find one particular defect: data races. This is the presentation of that
work. This was a talk of approximately 50 minutes, used to lecutre to a
group of masters and PhD students. The full paper text can be located
here.
The Claytronics Project and DSLs These are the slides from
my second SSSG talk, and I'm starting to understand how these things work.
They cover background on the Claytronics project. They also go into some
detail on my experiences programing catoms for the Claytronics project using
C++ and some things that we might like to improve about the entire experience.
Component Markets and COTS-Based Development These slides
come from my lecture on COTS-based software development in the software
engineering course entitled
"Methods: What to Design and Why".
It was given as part of the "Business" unit of the course, and includes my
own notes on the lecture and on the research that I performed for this topic.
A Little Bit of Real-Time Java Here are the slides from my first SSSG talk. This talk covered some of the basics of the RTSJ (Real-Time Specification for Java) and went into some detail about the new memory model and some of the pros and cons that come along with it.
Baker's Incremental Copying Collector Here is an animated explanation of Baker's Incremental Copying Collector, a garbage collector algorithm for real-time systems.
|