FOAL will be held in the Theater.
Gary T. Leavens —University of Central Florida, USA
Hidehiko Masuhara —University of Tokoyo, Japan
Hridesh Rajan —Iowa State University, USA
Henrique Rebêlo —Universidade Federal de Pernambuco, Brazil
John Boyland —The University of Wisconsin - Milwaukee
Aliasing occurs when the same piece of state can be accessed in two or more different ways. If mutable state is aliased, it can be hard to determine when properties (such as invariants) are preserved by field updates or method calls. Aliased mutable state is endemic in typical large object-oriented systems. Controlling and understanding aliasing is crucial for developing and maintaining software. And only modular understanding is scalable to large systems. Permissions enable the expression of what state is being accessed with sufficient abstraction to maintain modular reasoning. This talk will review the speaker's permission system and explain how it can be used to understand modular boundaries in realistic situations. Examples will be drawn from typical projects in an advanced undergraduate programming class.
John Boyland grew up in rural Northern California and received his Bachelor's degree in 1987 in Mathematics and Computer Science at the University of California, Davis. He continued his studies at the University of California, Berkeley under the direction of S. L. Graham. He received his Masters and Doctorate in 1989 and 1996, respectively. He then worked for two years as a post-doctoral fellow with William L. Scherlis at Carnegie Mellon University. He joined the UWM faculty in the Fall of 1998, and was promoted to Associate in August 2004 and to Full in August 2012. He spent full-year sabbaticals at Nanjing University in China (2006-07) and at ETH Zurich in Switzerland (2013-14) as a guest of Peter Müller.
Henrique Rebêlo —Universidade Federal de Pernambuco, Brazil
Gary T. Leavens —University of Central Florida, USA
Robin Salkeld —University of British Columbia, Canada
Ronald Garcia —University of British Columbia, Canada
Robert Hirschfeld —Hasso-Plattner-Institut, University of Potsdam, Germany
Context-oriented Programming (COP) is an approach to software modularity. COP languages and systems provide constructs and mechanisms to combine and abstract behavioral variations, which can be activated and deactivated according to computational context at run-time. This talk will reflect on COP language extensions, tools, and run-time support we developed and present some of many open issues we plan to investigate in the future.
Robert Hirschfeld is a professor of Computer Science at the Hasso-Plattner-Institute at the University of Potsdam, Germany. He is interested in improving the comprehension and design of software systems. Robert enjoys explorative programming in interactive environments. He served as a visiting professor at the Tokyo Institute of Technology and The University of Tokyo, Japan. Robert was a senior researcher with DoCoMo Euro-Labs, the European research facility of NTT DoCoMo Japan, where he worked on infrastructure components for next generation mobile communication systems with a focus on dynamic service adaptation and context-oriented programming. Prior to joining DoCoMo Euro-Labs, he was a principal engineer at Windward Solutions in Sunnyvale, California, where he designed and implemented distributed object systems, consulted in the area of object database technologies, and developed innovative software products and applications. Robert studied engineering cybernetics and computer science at Ilmenau University of Technology, Germany.
Bahram Zarrin —Technical University of Denmark, Denmark
Hubert Baumeister —Technical University of Denmark, Denmark
Florent Marchand de Kerchove —Ecole des Mines de Nantes, France
Jacques Noyé —Ecole des Mines de Nantes, France
Mario Südholt —Ecole des Mines de Nantes, France
David Liu —SUNY Binghamton
Data-intensive software plays an increasingly important role in modern computing, with diverse applications such as genome sequencing, astronomical data analysis, and multimedia streaming. In this talk, I will discuss Rate Types, a novel type system to reason about and optimize data-intensive programs. Built around stream languages, Rate Types performs static quantitative reasoning about stream rates — the frequency of data items in a stream being consumed, processed, and produced. Despite the fact that streams are fundamentally dynamic, Rate Types demonstrates that two essential concepts of stream rate control — throughput ratio and natural rate — are intimately related to the program structure itself and can be effectively and modularly reasoned about. The soundness of Rate Types has been established on top of a time-aware and parallelism-aware operational semantics. Experiments over a StreamIt-based implementation show Rate Types can effectively predict stream data rates of real-world stream programs. Rate Types is a collaboration with Ph.D. student Thomas Bartenstein.
Yu David Liu is an Associate Professor from State University of New York at Binghamton. His current research focuses on improving the state of the art of data-intensive and energy-efficient software through programming language and software engineering approaches. David was a recipient of an NSF CAREER Award and a Google Faculty Research Award. He received his Ph.D. from the Johns Hopkins University in 2007.
Page last modified Sunday, March 1, 2015.