A New Generation of Systematic Programming Tools

Jim Larus
Microsoft Research

October 18, 2002
2400 Sennott Square
10:30 am

ABSTRACT

Improving software and software development requires a new generation of programming languages and tools that make it possible to apply the enormous computational resources on a programmer's desk to the problem of finding errors and inconsistencies in programs. Although they will not find, let alone eliminate, all programming errors, tools of this sort have already demonstrated that they can improve program quality and reduce development cost. The Software Productivity Tools group in Microsoft Research has developed a variety of programming tools, which use simple, partial specifications and sophisticated program analysis to find errors systematically. This talk argues that this approach is beneficial, describes some existing tools, and points out the many open research directions.

BIO

Jim Larus is a senior researcher at Microsoft Research, leading the Software Productivity Tools (SPT) research group.  His previous research applied programming language and compiler technology to a wide range of problems, most notably efficient program measurement and fine-grain distributed shared memory.  He is now working on applying this approach and technologies to improve software development.  SPT goal is to develop and demonstrate new tools for program design, coding, debugging, and test that fundamentally improve software development. Prior to joining Microsoft Jim was an associate professor in the Computer Sciences Department at the University of Wisconsin - Madison.  While at Wisconsin, he  co-led the Wisconsin Wind Tunnel research project, which investigated the design and programming of shared-memory parallel computers.   Collaborators on the Wind Tunnel Project included Mark Hill, David Wood and a great bunch of graduate students. He has  also written some widely distributed software (SPIM, PP, QPT, EEL), all of which is still available.


© 2001 The Department of Computer Science at the University of Pittsburgh
Site maintained by the CS Web Team.