Formal methods for multicore programming : 15th International School on Formal Methods for the Design of Computer, Communication, and Software Systems, SFM 2015, Bertinoro, Italy, June 15-19, 2015, Advanced lectures / Marco Bernardo, Einar Broch Johnsen (eds.).
Material type:
TextSeries: Lecture notes in computer science ; 9104. | LNCS sublibrary. SL 2, Programming and software engineering.Publisher: Cham : Springer, 2015Description: 1 online resource (vii, 211 pages) : illustrationsContent type: - text
- computer
- online resource
- 9783319189413
- 3319189417
- 3319189409
- 9783319189406
- SFM 2015
- Computer software -- Development -- Congresses
- Formal methods (Computer science) -- Congresses
- Méthodes formelles (Informatique) -- Congrès
- Computer programming -- software development
- Programming & scripting languages: general
- Mathematical theory of computation
- Maths for computer scientists
- Software Engineering
- Computers -- Programming -- General
- Computers -- Programming Languages -- General
- Mathematics -- Logic
- Computers -- Mathematical & Statistical Software
- Computers -- Software Development & Engineering -- General
- Computer software -- Development
- Formal methods (Computer science)
- 005.1 23
- QA76.76.D47 I58 2015eb
| Item type | Current library | Collection | Call number | Status | Date due | Barcode | Item holds | |
|---|---|---|---|---|---|---|---|---|
eBook
|
e-Library | eBook LNCS | Available |
Includes author index.
Online resource; title from PDF title page (SpringerLink, viewed May 15, 2015).
This book presents 5 tutorial lectures given by leading researchers at the 15th edition of the International School on Formal Methods for the Design of Computer, Communication and Software Systems, SFM 2015, held in Bertinoro, Italy, in June 2015. SFM 2015 was devoted to multicore programming and covered topics such as concurrency and coordination mechanisms, architecture and memory models and type systems.
Intro; Preface; Contents; Parallel Objects for Multicores: A Glimpse at the Parallel Language Encore; 1 Introduction; 2 Background: Active Object-Based Parallelism; 3 Hello Encore; 4 Classes; 4.1 Object Construction and Constructors; 4.2 Active Classes; 4.3 Passive Classes; 4.4 Parametric Classes; 4.5 Traits and Inheritance; 5 Method Calls; 6 Futures; 6.1 Using the get operation; 6.2 Using the await command; 6.3 Using Future Chaining; 7 Expressions, Statements, and so Forth; 7.1 Types; 7.2 Expression Sequences; 7.3 Loops; 7.4 Arrays; 7.5 Formatted Printing; 7.6 Anonymous Functions
7.7 Polymorphism and Type Inference7.8 Module System; 7.9 Suspending Execution; 7.10 Embedding of C Code; 8 Streams; 9 Parallel Combinators; 9.1 Parallel Types; 9.2 A Collection of Combinators; 9.3 From Sequential to Parallel Types; 9.4 ... and Back Again; 9.5 Example; 9.6 Implementation; 10 Capabilities; 10.1 Capabilities for Controlling of Sharing; 10.2 Exclusive Capabilities; 10.3 Shared Capabilities; 10.4 Subordinate Capabilities; 10.5 Polymorphic Concurrency Control; 10.6 Composing Capabilities; 10.7 Implementing a Parallel Operation on Disjoint Parts of Shared State; 11 Examples
11.1 Example: Thread Ring11.2 Example: Prime Sieve; 11.3 Example: Preferential Attachment; 12 Formal Semantics; 12.1 The Syntax of Encore; 12.2 Typing of Encore; 12.3 Semantics of Encore; 12.4 Run-Time Typing; 13 Related Work; 14 Conclusion; A Code for Preferential Attachments; References; Coordinating Multicore Computing; 1 Introduction; 2 Interaction-Centric Concurrency; 3 Overview of Reo; 4 Examples; 4.1 Alternator; 4.2 Sequencer; 4.3 Buffered Sequencing; 4.4 Sampling; 4.5 Exclusive Router; 4.6 Shift-Lossy FIFO1; 4.7 Decoupled Alternating Producers and Consumer; 4.8 Dataflow Variable
4.9 Fully Decoupled Alternating Producers and Consumer4.10 Flexibility and Scaling; 5 Semantics; 6 Compilation; 7 Concluding Remarks; References; Modeling of Architectures; 1 Why Herd Cats Anyway?; 2 First Steps in Herding Cats; 3 Let's Herd Two Kittens 12; 4 Let's Herd Our First Big Cat: A Tiger 6; 4.1 SC per Location; 4.2 No Thin Air; 4.3 Propagation; 4.4 Observation; 4.5 Restoring SC with Heavyweight Fences; 5 Let's Herd Our Second Big Cat: A Jaguar 13; 5.1 Scopes; 5.2 RMO per Scope; 6 Let's Herd Our Third Big Cat: A Panther 15; 6.1 Plain and Special Events; 6.2 Release-Acquire Semantics
6.3 Validity6.4 Data Races and Undefined Executions; 7 Credits; A Answers to Exercises; A.1 First Step in Herding Cats; A.2 First Big Cat: Tiger; A.3 Second Big Cat: Jaguar; B Complete Bell and Cat Files; B.1 Kittens; B.2 Tiger; B.3 Jaguar; B.4 Panther; References; A Gentle Introduction to Multiparty Asynchronous Session Types; 1 Introduction; 2 Examples; 2.1 Example 1: The Three Buyer Protocol; 2.2 Example 2: The Three Buyer Protocol with Recursion; 3 The Calculus for Multiparty Sessions; 3.1 Syntax; 3.2 Operational Semantics; 4 Communication Type System; 4.1 Global and Session Types