Published: 6th February 2010
DOI: 10.4204/EPTCS.17
ISSN: 2075-2180

EPTCS 17

Proceedings Second International Workshop on
Programming Language Approaches to Concurrency and Communication-cEntric Software
York, UK, 22nd March 2009

Edited by: Alastair R. Beresford and Simon Gay

Preface
Alastair R. Beresford and Simon Gay
Towards a Unified Framework for Declarative Structured Communications
Hugo A. López, Carlos Olarte and Jorge A. Pérez
1
Session-Based Programming for Parallel Algorithms: Expressiveness and Performance
Andi Bejleri, Raymond Hu and Nobuko Yoshida
17
Execution Models for Choreographies and Cryptoprotocols
Marco Carbone and Joshua Guttman
31
Programming Idioms for Transactional Events
Matthew Kehrt, Laura Effinger-Dean, Michael Schmitz and Dan Grossman
43
Towards the Safe Programming of Wireless Sensor Networks
Francisco Martins, Luís Lopes and João Barros
49
Virtual Machine Support for Many-Core Architectures: Decoupling Abstract from Concrete Concurrency Models
Stefan Marr, Michael Haupt, Stijn Timbermont, Bram Adams, Theo D'Hondt, Pascal Costanza and Wolfgang De Meuter
63
A Concurrent Language with a Uniform Treatment of Regions and Locks
Prodromos Gerakios, Nikolaos Papaspyrou and Konstantinos Sagonas
79
Type Inference for Deadlock Detection in a Multithreaded Polymorphic Typed Assembly Language
Vasco T. Vasconcelos, Francisco Martins and Tiago Cogumbreiro
95

Preface

The Second International Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software (PLACES) was co-located with ETAPS 2009 in the city of York, England. The workshop took place on Sunday 22nd March 2009. The workshop focused on the challenges raised by the changing landscape of computer software. Traditionally, most software was written for a single computer with one CPU. However applications on the web today are built using numerous interacting services deployed on across many machines; soon off-the-shelf CPUs will host thousands of cores, and sensor networks will be composed from a large number of processing units. Many normal applications will soon need to make effective use of thousands of computing nodes. At some level of granularity, computation in such systems will be inherently concurrent and communication-centred.

The development of effective programming methodologies for the coming computing paradigm demands exploration and understanding of a wide variety of ideas and techniques. This workshop offered a forum where researchers from different fields could exchange new ideas on one of the central challenges for programming in the near future, the development of programming methodologies and infrastructures where concurrency and distribution are the norm rather than a marginal concern.

Out of a total of 16 papers, 10 were accepted for presentation at the workshop, and 8 papers were extended to incorporate feedback from the workshop; these 8 papers appear in these proceedings. We would like to thank the program committee of the workshop for their hard work in reviewing the papers:

We would also like to thank our invited speaker, Vivek Sarkar, for an interesting and inspiring talk. Finally, we wish to thank the editorial board of the Electronic Proceedings in Theoretical Computer Science (EPTCS) for publishing these proceedings in their series.

Alastair Beresford and Simon Gay
Program Chairs, December 2009