Westley Weimer

4636 Beyster Building

Office Hours: Mondays 1:30-2:00, Wednesdays 2:30-3:00

Office Phone: (734) 615-9916

Teaching and Advising

Accepting Students

I am currently seeking new PhD students. If you are interested, check out some of the research projects below and then send me an email to set up a meeting to discuss things in person.

In Winter 2018 I am teaching EECS 481 Software Engineering.

In Fall 2018 I will be teaching EECS 590 Advanced Programming Languages. I welcome graduate and undergraduate students and community scholars. If you are an undergraduate student, note that currently only CSE graduate students can enroll directly, so you must use the override system. Note that many overrides are not be processed until late summer.

Claire Le Goues, Zachary Fry and I have written an article explaining the CS job search process for graduate students (e.g., teaching and research statements, interviews, offers, negotations, academia and industry) and our experiences with it from 2005 to 2014.

Conferences and Workshops

I am co-organizing the Genetic Improvement Workshop, co-located with the 2018 International Conference on Software Engineering. I encourage you to submit interesting work!

Research Projects

My current main research interests relate to consciousness, time, and advancing software quality by using both static and dynamic programming language approaches. On the purely-CS side, I am particularly concerned with automatic or minimally-guided techniques that can scale and be applied easily to large, existing programs. I believe that finding bugs is insufficient, and I also work to help programmers address defects, understand programs, and program correctly.

Current major research interests and areas:


Research Group

Kevin Angstadt, Ph.D. Student
  MCS Thesis: RAPID Programming of Pattern-Recognotion Processors (PDF Slides)
Yu Huang (黄羽), Ph.D. Student
  MS Thesis: Circuit Design for FPGAs in Sub-Threshold Ultra-Low Power Systems (PDF Slides)
Dr. Kevin Leach, Senior Research Fellow
  PhD Proposal: Transparent System Introspection in Support of Analyzing Stealthy Malware (PDF Slides)
  PhD: Transparent System Introspection in Support of Analyzing Stealthy Malware (PDF Slides)

Emeritus Members

Jonathan Dorn (moved on to GrammaTech) (co-advised with Jason Lawrence)
  MCS Thesis: A General Software Readability Model (PDF Slides)
  PhD Proposal: Improving Programs Through Source Code Transformations (PDF Slides)
  PhD Thesis: Optimizing Tradeoffs of Non-Functional Properties in Software (PDF Slides)
Jamie Floyd (moved on to Apogee Research)
  MCS Thesis: N-Prog: A Framework for Proactive Coarse-Grained Diversity
Anish Tondwalkar (moved on to UC San Diego)
  MS Thesis: Finding and Fixing Bugs in Liquid Haskell (PDF Slides)
Zachary P. Fry (moved on to GrammaTech)
  MCS Thesis: Fault Localization Using Textual Similarities (PDF Slides)
  PhD Proposal: Leveraging Light-Weight Analyses to Aid Software Maintenance (PDF Slides)
  PhD: Leveraging Light-Weight Analyses to Aid Software Maintenance (PDF Slides)
Claire Le Goues (moved on to Carnegie Mellon University)
  MS Thesis: Specification Mining with Few False Positives (PDF Slides)
  PhD Proposal: Automatic, Efficient, and General Repair of Software Defects using Lightweight Program Analyses (PDF Slides)
  PhD: Automatic Program Repair Using Genetic Programming (PDF Slides)
Adam Brady (moved on to Google) (co-advised with Jason Lawrence)
  MCS Thesis: genBRDF: Synthesizing Novel Analytic BRDFs with Genetic Programming (PPTX Slides)
Pieter Hooimeijer (moved on to Facebook)
  MS Thesis: Generating String Inputs Using Constrained Symbolic Execution (PDF Slides)
  PhD Proposal: Decision Procedures for String Constraints (PDF Slides)
  PhD:Decision Procedures for String Constraints (PPTX Slides)
Raymond P.L. Buse (moved on to Google)
  MCS Thesis: Automatic Documentation Inference for Exceptions (PDF Slides)
  PhD Proposal: Automatically Describing Program Structure and Behavior (PDF Slides)
  PhD: Automatically Describing Program Structure and Behavior (PDF Slides)
Kinga Dobolyi (moved on to George Mason University)
  MS Thesis: Changing Java's Semantics for Handling Null Pointer Exceptions (PDF Slides)
  PhD Proposal: An Exploration of User-Visible Errors to Improve Fault Detection in Web-based Applications (PPT Slides)
  PhD: An Exploration of User-Visible Errors in Web-based Applications to Improve Web-based Applications (PDF Slides)

Past Courses

Advanced Programming Languages
Software Engineering
UVA CS 1120
Introduction to Computing
UVA CS 4610/4501
Programming Languages
UVA CS 6610
Programming Languages
UVA CS 8561
Programming Languages Topics
Udacity CS 262
Building a Web Browser