Monday 23 January 2012
8:00 Breakfast
9:00 Welcome: Andrew Black and Annie Liu
9:15 Invited Talk: Ken Birman
The Next Challenges in Distributed Consistency
10:00 Morning Refreshments
10:30 Fact-based Inter-Process Communication Primitives for Programming Distributed Systems
Robbert Van Renesse
10:45 Modular Fault Tolerance in a Network-Transparent Language
Peter Van Roy and Raphael Collet
11:00 A Pairwise Abstraction for Round-Based Protocols
Lonnie Princehouse, Nate Foster, and Ken Birman
11:15 Panel discussion: Communications Primitives
What are the shortcomings of conventional mechanisms?
What should future communication mechanisms look like?
How should we deal with communication failure?
Can we integrate the best features of proposed mechanisms to arrive at better ones?
12:00 Lunch at Karma
13:30 Linguistic Tools for Reasoning About Weak Consistency in Distributed Systems
John Field
13:45 Declarative Constraint Optimization in Distributed Systems
Changbin Liu and Boon Thau Loo
14:00 CALM, Collected and Disorderly: Distributed Programming in Bloom
Joseph Hellerstein
14:15 Distributed Algorithms in Structured, Event-Driven Languages
Charles Killian
14:30 Panel Discussion: Rule-Based System Descriptions
What is the state of the art and the practice using rule-based specification for distributed systems?
How do rule-based specifications compare with imperative descriptions using conventional languages?
Are rule-based descriptions always superior? If not, how can we integrate the two?
15:30 Afternoon Refreshments
16:00 Invited Talk: Nancy Lynch
Timed I/O Automata: a Foundation for Languages for Distributed Algorithms
16:45 From Formal Methods to Executable Code
Peter Musial
17:00 Objects are Enough!
Andrew Black
17:15 From Clarity to Efficiency for Distributed Algorithms
Yanhong A. Liu, Bo Lin, and Scott D. Stoller
17:30 Panel discussion: Protocol Representation and Automation
How should protocols be represented? By state machines, or objects, or what else?
How can we evaluate different representations?
What are the challenges in generating efficient, executable code from a higher-level representation?
Can all low-level issues be addressed through formal specifications and automatic code generation?
18:15 Break, walk to dinner
18:30 Dinner at Morimoto
Tuesday, January 24, 2012
8:00 Breakfast
8:30 Invited Talk: Leslie Lamport
Programming Languages are not the Answer
9:15 Verifying Concurrent Programs using Locally Checked Invariants
Ernie Cohen
9:30 The Logic of Events, a Framework to Reason about Distributed Systems
Mark Bickford, Vincent Rahli, and Robert Constable
9:45 LaDeDa: Languages for Debuggable Distributed Algorithms
Mark Miller and Tom Van Cutsem
10:00 Morning Refreshments
10:30 Panel Discussion: Languages for Reasoning and Correctness
What is the state of the art and the practice in formal specification and verification of distributed systems?
What are the challenges and directions?
Can one connect formal verification with practical testing and debugging?
11:15 Invited Talk: Michel Raynal
Recursion in Distributed Shared-Memory Algorithms
12:00 Lunch at Han Dynasty
13:30 Recursion in Scalable Protocols via Distributed Data Flows
Krzysztof Ostrowski
13:45 Language Abstractions for Software-Defined Networks
Nate Foster, Michael Freedman, Rob Harrison, Christopher Monsanto, Mark Reitblatt, Jennifer Rexford, Alec Story, and David Walker
14:00 Constellation: Programming Decentralised Social Networks
Anne-Marie Kermarrec and Francois Taiani
14:15 Panel Discussion: Programming Models
What are the advantages and disadvantages of recursion in distributed algorithms?
Do distributed systems need different programming models from centralized systems?
What are the necessary support tools, for conventional and new programming models?
15:00 Closing Remarks