You are here: Home Research
Document Actions


Documents and Citations


  • U.S. Patent 6,609,089, Lucent Technologies, August 2003. T. Ball et al. Method and apparatus for providing interactive services with multiple interfaces. This patent describes the use of lookaheads in interactive services.
  • U.S. Patent 6,529,863, Lucent Technologies, March 2003. T. Ball et al. Method and apparatus for providing interactive services with multiple interfaces. This patent describes reactive constraint graphs and their use in interactive services.

Specific Interests

My research interests include programming languages; software architecture, components, frameworks, and design patterns; concurrent and distributed systems; mobile and embedded computing; human-computer interaction; and educational technology. My list of selected publications provides further information on my current research interests. Concretely, I have conducted research in the following areas:

HCI with mobile devices
Tao Bai, Christopher K. Chung, Daisy Rockwell, George K. Thiruvathukal, and I are exploring the use of mobile devices in the classroom of the future. While inspired by the ActiveCampus project, the focus of our work is leveraging mobile devices to enhance the teaching of the small liberal arts classes typical for Loyola University Chicago. As a pilot project, we have created an application suite for studying the Urdu language. We have received seed funding for this project from Loyola's College of Arts and Sciences. We are currently developing several collaborative applications to enhance our application suite.
Christopher Colby, Lalita Jategaonkar Jagadeesan, Radha Jagadeesan, Carlos Puchol, and I have developed Triveni, an object-oriented framework for concurrent programming with threads and events. Triveni supports the modular design of event-driven systems through combinators that operate on abstract behaviors. The Triveni Framework for Java, compatible with Java 2, is publicly available through SourceForge. Radha Jagadeesan's and my work on Triveni was supported by a research grant from the National Science Foundation (NSF) from September 1999 until August 2001. Trull (TRiveni Ultra Light), my current project in this area, focuses on performance, JavaBeans compliance for seamless integration with lightweight containers such as the Spring Framework, and better support for thread-based components.
Multi-channel services
I have been involved in the Sisl project at Bell Labs. Sisl (Several Interfaces, Single Logic) is an environment for multi-channel interactive services. Sisl provides an XML-based markup language for specifying executable dialogs and services that can be used in different layers of the enterprise architecture. Sisl flexibly supports single-device (such as HTML, WML, VoiceXML) as well as multi-device (such as MobileXML) presentation markup. Sisl evolved from MAWL, a domain-specific language for programming interactive web and voice services, also developed at Bell Labs. The work on Sisl has lead to U.S. Patents 6,529,863 and 6,609,089.
Software design patterns
I have been exploring issues in the interaction between programming languages and software design patterns. I developed a framework for modeling function closures in C++. Gerald Baumgartner, Vincent Russo, and I proposed a collection of language constructs for better pattern support.
Type systems
I have worked on extensions of the Hindley-Milner and related type systems with existentially quantified types, which provide a semantic foundation for abstract data types. Martin Odersky and I presented an extension of the Hindley-Milner type system that allows explicit type annotations.