Skip to content Skip to navigation
Computer Science Department Colloquium
4/22/2014 11:00 am
CoRE A(Room 301)

TouchDevelop: Scripting Mobile+Cloud Apps via Mobile+Cloud

Thomas Ball, Microsoft Research

Faculty Host: Santosh Nagarakatte


TouchDevelop is a programming environment hosted in the cloud and accessible via mobile devices that enables the creation of scripts for mobile devices that access the cloud. TouchDevelop has four main components:

1. A cloud back-end that enables a social approach to software development, connecting programmers and their users.

2. A browser-hosted mobile integrated development environment for creating and maintaining scripts that execute across a variety of devices.

3. A statically typed scripting language with novel abstractions to support stateless reactive graphical user interfaces (boxes) and replicated data for social applications (cloud types).

4. A set of high-level APIs to make it easy to access device sensors/resources and services.

There will be several opportunities for audience participation in this talk; audience members are encouraged to bring their favorite mobile device, be it a smartphone, tablet or laptop and to visit before the talk. TouchDevelop is the work of a team at Microsoft Research including Judith Bishop, Sebastian Burckhardt, Peli de Halleux, Michal Moskal, and Nikolai Tillman.


Thomas Ball (Tom) is a Principal Researcher and Research Manager at Microsoft Research. From 1993-1999, he was a member of the technical staff at Bell Laboratories. His 1997 PLDI paper on path profiling with colleagues Ammons and Larus received the PLDI 2007 Most Influential Paper Award. In 1999, Tom moved to Microsoft Research, where he started the SLAM software model checking project with Sriram Rajamani, which led to the creation of the Static Driver Verifier (SDV) tool for finding defects in device driver code. Tom and Sriram received the 2011 CAV Award "for their contributions to software model checking, specifically the development of the SLAM/SDV software model checker that successfully demonstrated computer-aided verification techniques on real programs." Tom is a 2011 ACM Fellow for "contributions to software analysis and defect detection". As a manager at Microsoft, he has grown research areas such as automated theorem proving, program testing/verification, and empirical software engineering.