Proceedings 7th Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software (PLACES'14)

This volume contains the post-proceedings of PLACES 2014, the seventh Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software, which was held in Grenoble, France, on April 12th 2014, and co-located with ETAPS, the European Joint Conferences on Theory and Practice of Software. The PLACES workshop series aims to offer a forum where researchers from different fields exchange new ideas on one of the central challenges for programming in the near future: the development of programming languages, methodologies and infrastructures where concurrency and distribution are the norm rather than a marginal concern. Previous editions of PLACES were held in Rome (2013), Tallin (2012), Saarbrueken (2011), Paphos (2010) and York (2009), all co-located with ETAPS, and the first PLACES was held in Oslo and co-located with DisCoTec (2008). The Program Committee, after a careful and thorough reviewing process, selected nine papers out of 12 submissions for presentation at the workshop and inclusion in this post-proceedings. Each submission was evaluated by three referees (with one paper receiving a fourth review), and the accepted papers were selected during a week-long electronic discussion. One of the nine accepted papers was conditionally accepted subject to a process of shepherding by a PC member, which was successful and led to the paper's full acceptance. In addition to the contributed papers, the workshop will feature an invited talk by Akash Lal, Microsoft Research India, entitled "Finding Concurrency Bugs Under Imprecise Harnesses".

[1]  Astrid Kiehn,et al.  Amortised Bisimulations , 2005, FORTE.

[2]  Pekka Hedqvist A Parallel and Multithreaded ERLANG Implementation , 1998 .

[3]  Julian Rathke,et al.  Typed behavioural equivalences for processes in the presence of subtyping , 2004, Math. Struct. Comput. Sci..

[4]  Yi Guo,et al.  Work-first and help-first scheduling policies for async-finish task parallelism , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[5]  Alan Burns,et al.  Guide for the use of the Ada Ravenscar Profile in high integrity systems , 2004, ALET.

[6]  Sophia Drossopoulou,et al.  Session Types for Object-Oriented Languages , 2006, ECOOP.

[7]  Michael J. Butler,et al.  ProB: A Model Checker for B , 2003, FME.

[8]  Steven S. Muchnick,et al.  Advanced Compiler Design and Implementation , 1997 .

[9]  Ugo Montanari,et al.  CC-Pi: A Constraint-Based Language for Specifying Service Level Agreements , 2007, ESOP.

[10]  Hugo Torres Vieira,et al.  Conversation types , 2009, Theor. Comput. Sci..

[11]  Michael J. Nash,et al.  The Chinese Wall security policy , 1989, Proceedings. 1989 IEEE Symposium on Security and Privacy.

[12]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[13]  Michael Poppleton,et al.  Automatic Translation from Combined B and CSP Specification to Java Programs , 2007, B.

[14]  Vladimiro Sassone,et al.  A logical framework for history-based access control and reputation systems , 2008, J. Comput. Secur..

[15]  Raghava Rao Mukkamala,et al.  From Paper Based Clinical Practice Guidelines to Declarative Workflow Management , 2008, Business Process Management Workshops.

[16]  Juliusz Chroboczek,et al.  Continuation-Passing C, compiling threads to events through continuations , 2010, High. Order Symb. Comput..

[17]  Michael Butler,et al.  Tool Support for Event-B Code Generation , 2010 .

[18]  Ana Cavalcanti,et al.  Automatic Translation from Circus to Java , 2006, FM.

[19]  Jayadev Misra,et al.  A timed semantics of Orc , 2008, Theor. Comput. Sci..

[20]  Flemming Nielson,et al.  Static Analysis for the pi-Calculus with Applications to Security , 2001, Inf. Comput..

[21]  Simon L. Peyton Jones,et al.  Runtime support for multicore Haskell , 2009, ICFP.

[22]  Gian Luigi Ferrari,et al.  Local policies for resource usage analysis , 2009, TOPL.

[23]  Juliusz Chroboczek,et al.  Continuation Passing for C A space-efficient implementation of concurrency , 2006 .

[24]  Mats Carlsson,et al.  Parallel execution of prolog programs: a survey , 2001, TOPL.

[25]  Jim Woodcock,et al.  Operational Semantics for Model Checking Circus , 2005, FM.

[26]  Greg J. Michaelson,et al.  Low-pain, high-gain multicore programming in Haskell: coordinating irregular symbolic computations on multicore architectures , 2009, DAMP '09.

[27]  Rocco De Nicola,et al.  Proof techniques for cryptographic processes , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[28]  Carlos Olarte,et al.  Towards a Unified Framework for Declarative Structured Communications , 2009, PLACES.

[29]  Martin Berger,et al.  The Two-Phase Commitment Protocol in an Extended pi-Calculus , 2003, EXPRESS.

[30]  Kohei Honda,et al.  Types for Dyadic Interaction , 1993, CONCUR.

[31]  S. Tucker Taft,et al.  Consolidated Ada Reference Manual Language and Standard Libraries , 2002, Lecture Notes in Computer Science.

[32]  Delia Kesner,et al.  First-class patterns , 2009, Journal of Functional Programming.

[33]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[34]  Marvin Theimer,et al.  Cooperative Task Management Without Manual Stack Management , 2002, USENIX Annual Technical Conference, General Track.

[35]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[36]  Koen Claessen,et al.  Finding race conditions in Erlang with QuickCheck and PULSE , 2009, ICFP.

[37]  Anikó Nagyné Víg,et al.  Building a Refactoring Tool for Erlang ? , 2008 .

[38]  Naoki Kobayashi,et al.  Resource Usage Analysis for the Pi-Calculus , 2006, VMCAI.

[39]  Hugo Torres Vieira,et al.  A calculus for modeling and analyzing conversations in service-oriented computing , 2010 .

[40]  Frédéric Boussinot,et al.  FairThreads: mixing cooperative and preemptive threads in C , 2006, Concurr. Comput. Pract. Exp..

[41]  Atsushi Igarashi,et al.  Resource usage analysis , 2002, POPL '02.

[42]  Daniele Gorla,et al.  A Concurrent Pattern Calculus , 2014, Log. Methods Comput. Sci..

[43]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[44]  Peter H. Welch,et al.  CSP Networking for Java (JCSP.net) , 2002, International Conference on Computational Science.

[45]  Per Brinch Hansen,et al.  Structured multiprogramming , 1972, CACM.

[46]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[47]  Michael J. Butler,et al.  Linking Event-B and Concurrent Object-Oriented Programs , 2008, Refine@FM.

[48]  Nobuko Yoshida,et al.  Structured Interactional Exceptions in Session Types , 2008, CONCUR.

[49]  Eric A. Brewer,et al.  USENIX Association Proceedings of HotOS IX : The 9 th Workshop on Hot Topics in Operating Systems , 2003 .

[50]  John Tang Boyland,et al.  Checking Interference with Fractional Permissions , 2003, SAS.

[51]  Randy H. Katz,et al.  Above the Clouds: A Berkeley View of Cloud Computing , 2009 .

[52]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1987, TOPL.

[53]  Vasco Thudichum Vasconcelos,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 1998, SecReT@ICALP.

[54]  João Costa Seco,et al.  The Conversation Calculus: A Model of Service-Oriented Computation , 2008, ESOP.

[55]  Vivek Sarkar,et al.  X10: an object-oriented approach to non-uniform cluster computing , 2005, OOPSLA '05.

[56]  David J. Pym,et al.  A Calculus and logic of resources and processes , 2006, Formal Aspects of Computing.

[57]  Vivek Sarkar,et al.  Compile-time partitioning and scheduling of parallel programs , 1986, SIGPLAN '86.

[58]  Marco Carbone,et al.  A Logic for Choreographies , 2010, PLACES.

[59]  Nobuko Yoshida,et al.  Global escape in multiparty sessions † , 2014, Mathematical Structures in Computer Science.

[60]  Konstantinos Sagonas,et al.  Static Detection of Race Conditions in Erlang , 2010, PADL.

[61]  Cosimo Laneve,et al.  Foundations of Web Transactions , 2005, FoSSaCS.

[62]  Jim Woodcock,et al.  A Concurrent Language for Refinement , 2001, IWFM.

[63]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[64]  Lars Bergstrom,et al.  Programming in Manticore, a Heterogenous Parallel Functional Language , 2009, CEFP.

[65]  Andrew Edmunds,et al.  Providing concurrent implementations for Event-B developments , 2010 .

[66]  Luca Padovani,et al.  A theory of contracts for Web services , 2007, TOPL.

[67]  David J. Pym,et al.  Algebra and logic for access control , 2010, Formal Aspects of Computing.

[68]  David Christopher Sehr,et al.  Automatic parallelization of Prolog programs , 1992 .

[69]  David E. Culler,et al.  SEDA: an architecture for well-conditioned, scalable internet services , 2001, SOSP.

[70]  Rajkumar Buyya,et al.  Article in Press Future Generation Computer Systems ( ) – Future Generation Computer Systems Cloud Computing and Emerging It Platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility , 2022 .

[71]  Francesco Tiezzi,et al.  A Calculus for Orchestration of Web Services , 2007, ESOP.

[72]  Nobuko Yoshida,et al.  Global Progress in Dynamically Merged Multiparty Sessions , 2008 .

[73]  Guilherme Ottoni,et al.  Automatic thread extraction with decoupled software pipelining , 2005, 38th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'05).

[74]  Nobuko Yoshida,et al.  Linearity and Bisimulation , 2002, FoSSaCS.

[75]  John Glauert,et al.  SISAL: streams and iteration in a single-assignment language. Language reference manual, Version 1. 1 , 1983 .

[76]  Peter W. O'Hearn,et al.  Permission accounting in separation logic , 2005, POPL '05.

[77]  C. A. R. Hoare,et al.  Monitors: an operating system structuring concept , 1974, CACM.

[78]  Melinda Tóth,et al.  Building dependency graph for slicing erlang programs , 2011 .

[79]  Peter H. Welch,et al.  A CSP model for Java multithreading , 2000, 2000 Proceedings International Symposium on Software Engineering for Parallel and Distributed Systems.

[80]  Nobuko Yoshida,et al.  Structured Communication-Centred Programming for Web Services , 2007, ESOP.

[81]  Benjamin C. Pierce,et al.  Linearity and the pi-calculus , 1999, TOPL.

[82]  Hugo Torres Vieira,et al.  A Process Calculus Analysis of Compensations , 2009, TGC.

[83]  Willy Zwaenepoel,et al.  Flash: An efficient and portable Web server , 1999, USENIX Annual Technical Conference, General Track.

[84]  L. Youseff,et al.  Toward a Unified Ontology of Cloud Computing , 2008, 2008 Grid Computing Environments Workshop.

[85]  Massimo Bartoletti,et al.  A Calculus of Contracting Processes , 2010, 2010 25th Annual IEEE Symposium on Logic in Computer Science.

[86]  References , 1971 .

[87]  Clemens Grelck,et al.  SAC: off-the-shelf support for data-parallelism on multicores , 2007, DAMP '07.

[88]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[89]  Michael Butler,et al.  Tasking Event-B: An Extension to Event-B for Generating Concurrent Code , 2011 .

[90]  Marco Carbone,et al.  Session-based Choreography with Exceptions , 2009, PLACES@DisCoTec.