This is the main web page for the 2015 instance of the Foundations of Aspect-Oriented Languages workshop. FOAL 2015 will be held in conjunction with Modularity'15 at Colorado State University in Fort Collins, Colorado, USA.

This page contains the following information:

The old call for papers is still available, although the submittal deadline has passed.


FOAL 2015 will be held on March 16, 2015 in conjuction with the Modularity'15 conference at Colorado State University in Fort Collins, Colorado, USA.


You may also be interested in a printer-friendly version of the agenda.

Monday, 16 March 2015
Theater, Colorado State University, Fort Collins, Colorado, USA

FOAL will be held in the Theater.

Welcome to FOAL'15 and introductions (30 minutes)


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

Keynote 1


Session Chair: Henrique Rebêlo —Universidade Federal de Pernambuco, Brazil
Title: Modular Reasoning about Aliasing using Permissions (Invited Keynote) (50 minutes + 10 minutes discussion) [Slides (PDF)]

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.

About the Speaker:

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.

Break—Coffee, Informal Discussions


Research Track: Inward


Session Chair: Hidehiko Masuhara —University of Tokoyo, Japan
Enforcing Information Hiding in Interface Specifications: A Client-Aware Checking Approach (25 minutes + 5 minutes discussion) [Slides (PDF)]

Henrique Rebêlo —Universidade Federal de Pernambuco, Brazil

Gary T. Leavens —University of Central Florida, USA

Essential Retroactive Weaving (25 minutes + 5 minutes discussion) [Slides (PDF)]

Robin Salkeld —University of British Columbia, Canada

Ronald Garcia —University of British Columbia, Canada

Keynote 2


Session Chair: David H. Lorenz —The Open University of Israel, Israel
Recent Developments in Context-oriented Programming (Invited Keynote) (50 minutes + 10 minutes discussion) [Slides (PDF)]

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.

About the speaker:

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.



Research Track: Onward


Session Chair: Henrique Rebêlo —Universidade Federal de Pernambuco, Brazil
Towards Separation of Concerns in Flow-Based Programming (25 minutes + 5 minutes discussion) [Slides (PDF)]

Bahram Zarrin —Technical University of Denmark, Denmark

Hubert Baumeister —Technical University of Denmark, Denmark

Towards Modular Instrumentation of Interpreters in JavaScript (25 minutes + 5 minutes discussion) [Slides (PDF)]

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

Break—Coffee, Informal Discussions


Keynote 3


Session Chair: Hridesh Rajan —Iowa State University
Modular Performance Reasoning of Data-Intensive Programs (Invited Keynote) (50 minutes + 10 minutes discussion) [Slides (PDF)]

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.

About the Speaker:

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.



Session Chair: Gary T. Leavens —University of Central Florida, USA

Program Committee 

We are pleased to have another outstanding program committee for FOAL 2015.


Page last modified Monday, March 2, 2015 .