Onward! 2014
Mon 20 - Fri 24 October 2014 Portland, Oregon, United States
co-located with SPLASH 2014
Wed 22 Oct 2014 10:52 - 11:15 at Salon A - Session the First Chair(s): Sebastian Erdweg

Software development involves stitching existing components together. These data/service components are usually not well-understood, as they are made by others and often obtained from somewhere on the Internet. This makes software development a daunting challenge, requiring programmers to manually discover the resources they need, understand their capabilities, adapt these resources to their needs, and update the system as external components change.

Software engineers have long realized the problem why automation seems impossible: the lack of semantic “understanding” on the part of the machine about those components. A multitude of solutions have been proposed under the umbrella term “Semantic Web” (SW), in which semantic “markup” of the components with concepts from semantic ontologies and the ability to invoke queries over those concepts enables a form of automated discovery and mediation among software services.

On the other hand, programming languages rarely provide mechanisms for anchoring objects/data to real-world concepts. Inspired by the aspirations of SW, in this paper we reformulate its visions from the perspective of a programming model, i.e., that components themselves should be able to interact using semantic ontologies, rather than having a separate markup language and composition platform. In the vision, a rich specification language and common sense knowledge base over real-world concepts serves as a “lingua franca” to describe software components. Components can query the system to automatically (1) discover other components that provide needed functionality/ data (2) discover the appropriate API within that component in order to obtain what is intended, and even (3) implicitly interpret the provided data in the desired form independent of the form originally presented by the provider component.

By demonstrating a successful case of realization of this vision on a microexample, we hope to show how a programming languages (PL) approach to SW can be superior to existing engineered solutions, since the generality and expressiveness in the language can be harnessed, and encourage PL researchers to jump on the SW bandwagon.

Wed 22 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
Session the FirstOnward! Papers at Salon A
Chair(s): Sebastian Erdweg TU Darmstadt
10:30
22m
Talk
Programming with Managed Time
Onward! Papers
Sean McDirmid Microsoft Research, Jonathan Edwards MIT, USA
10:52
23m
Talk
Call by Meaning
Onward! Papers
Hesam Samimi SAP Labs, Chris Deaton Cycorp, Yoshiki Ohshima Viewpoints Research Institute, Alessandro Warth SAP Labs, Todd Millstein University of California, Los Angeles
11:15
22m
Talk
Versionable, Branchable, and Mergeable Application State
Onward! Papers
David H. Lorenz Open University and Technion IIT, Boaz Rosenan University of Haifa
11:37
23m
Talk
The Semantics of Version Control
Onward! Papers
Wouter Swierstra University of Utrecht, Andres Löh Well-Typed LLP