Summer School Speakers

  • Andreas Gal

    Andreas Gal works for the Mozilla Corporation. He used to be a project scientist at the University of California, Irvine. His my main research interests are secure systems, type-safe languages, dynamic compilation, and virtual machines.

  • Byron Cook

    Dr. Byron Cook is a Principal Researcher at Microsoft Research in Cambridge, UK as well as Professor of Computer Science at Queen Mary, University of London.  He is one of the developers of the Terminator program termination proving tool, as well as the SLAM software model checker and other formal methods tools.

  • Hans Boehm

    Hans Boehm is perhaps best known as the primary author of a commonly used garbage collection library. That experience convinced him that there was a need to address fundamental shared memory parallel programming issues.  He was involved in the revision of the Java memory model, and led the analogous effort for C++. He was awarded the PLDI 2003 most influential paper award and the SIGPLAN 2006 Distinguished Service Award. He is an ACM Distinguished Scientist and a Research Manager at HP Labs. 

  • Jan Vitek

    I work on aspects of programming language technologies including but not limited to software engineering, real-time and embedded computing, and virtual machine. I dabble in information security, program analysis, concurrent and distributed programming and bioinformatics.

  • Matthew Arnold

    Matthew Arnold received a B.S. degree from Rensselaer Polytechnic Institute in 1995, and a Ph.D. from Rutgers University in 2002. For his thesis work he developed low-overhead techniques for performing online profiling and feedback-directed optimization in a Java virtual machine. In 2002, Matthew became a Research Staff Member in the Software Technology Department at the IBM T.J. Watson Research Center, where he continued his research in language-level profiling techniques. In recent years he has focused on developing tools and techniques for diagnosing performance and scaling problems in large, deployed applications. 

  • Matthew Flatt

    Matthew Flatt is an associate professor of computer science at the University of Utah. He is one of the developers of the Racket programming language (formerly known as PLT Scheme) and a co-author of the introductory programming textbook "How to Design Programs". He received his PhD in computer science from Rice University in 1999 and joined Utah in 1999.

  • Thomas Ball

    Thomas Ball is Principal Researcher at Microsoft Research where he manages the Software Reliability Research Group. Tom received a Ph.D. from the University of Wisconsin-Madison in 1993, was with Bell Labs from 1993-1999, and has been at Microsoft Research since 1999. He is one of the originators of the SLAM project, a software model checking engine for C that forms the basis of the Static Driver Verifier tool. Tom's interests range from program analysis, model checking, testing and automated theorem proving to the problems of defining and measuring software quality.

  • William Cook

    William Cook has experience in both pure research and industrial software development. His early research focused on the semantics of inheritance in object-oriented languages, formalization of mixins, and polymorphic type systems for object languages. He is currently working on interfacing programming languages and databases, distributed computing and web services, type theory and data abstraction. Products he was instrumental in creating include AppleScript at Apple Computer, the Writer's Solution for Prentice Hall, and the Allegis' Enterprise Partner Relationship Management.