|
Programming Systems Group
|
The Programming Systems Group in the Department of
Computer Science and Engineering at the University of
California, San Diego is interested in developing
new languages, compilers, program analysis techniques
and development environments for making software systems
easier to build, maintain and understand.
Core Faculty
Affiliated Faculty
PhD Students
Recent alumni
News

|
|
(10/05/09) The UCSD Programming Systems group has
two papers accepted to POPL 20010. Congrats to all!
|
|
(08/15/09) Macneil Shonle
has graduated and will start as an Assistant Professor at UT
San Antonio. Awesome job Macneil!
|
|
|

|
|
(08/01/09) Sudipta Kundu did a fantastic
job at defending his thesis. He is going to join Synopsis. Congrats Sudipta!
|

|
|
(01/27/09) The UCSD Programming Systems group has
three papers accepted to PLDI 2009. Congrats to all!
|
Recent Publications
Staged Information Flow for Javascript, Ravi Chugh, Jeff Meister, Ranjit Jhala, and Sorin Lerner,
PLDI, 2009.
Type-based Data Structure Verification, Patrick Rondon, Ming Kawaguchi, and Ranjit Jhala,
PLDI, 2009.
Proving Optimizations Correct using Parameterized Program Equivalence, Zachary Tatlock, Sudipta Kundu, and Sorin Lerner,
PLDI, 2009.
Equality Saturation: A New Approach to Optimization, Ross Tate, Michael Stepp, Zachary Tatlock, and Sorin Lerner,
POPL, 2009.
Verifying Reference Counting Implementations, Michael Emmi, Ranjit Jhala, Rupak Majumdar, and Eddie Kohler,
TACAS, 2009.
 |
Arccos
The goal of this project is to provide strong
guarantees about the High-Level Sythesis process (HLS). As a
starting point, we are exploring the idea of performing
translation validation for HLS, which consists of
showing, for each translation that the HLS tool performs,
that the output program produced by the tool has the same
behavior as the original program.
[read more...] |
 |
Arcum
Arcum is an extension to the refactoring paradigm that
provides for the modular maintenance of crosscutting design
idioms, supporting both substitutability of design idiom
implementations and the checking of essential constraints.
[read more...] |
|
Collider
The Collider project investigates techniques for automatically
generating efficient, scalable, correct, and precise dataflow analyzers
and optimizers from a very high-level specification.
[read more...] |
 |
Quail
The goal of the Quail project is to develop techniques for deep
typechecking and refactoring for systems that combine Java
code with a database back-end using the Java Persistence
API.
[read more...] |
|
Liquid Types
Liquid Types is a system that combines Hindley-Milner type
inference with Predicate Abstraction to automatically infer
dependent types precise enough to prove a variety of safety
properties.
[read more...] |
 |
Radar
The Radar project aims to automatically generate precise and scalable
concurrent analyses from their sequential counterparts, thereby
making concurrent analyses much easier to write, and allowing
compiler writers and analysis writers to easily adapt current
analyses to account for concurrency.
[read more...] |
Annual Courses
The following core courses are regularly offered each academic year.
Topics Courses
Several topics courses are also offered on a less regular basis.
|