COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring. |
University of Cambridge > Talks.cam > Logic and Semantics Seminar (Computer Laboratory) > Fencing off Go: Liveness and Safety for Channel-based Programming
Fencing off Go: Liveness and Safety for Channel-based ProgrammingAdd to your list(s) Download to your calendar using vCal
If you have a question about this talk, please contact Dominic Mulligan. Go is a production-level statically typed programming language whose design features explicit message-passing primitives and lightweight threads, enabling (and encouraging) programmers to develop concurrent systems where components interact through communication more so than by lock-based shared memory concurrency. Go can only detect global deadlocks at runtime, but provides no compile-time protection against all too common communication mismatches or partial deadlocks. This talk presents a static verification framework for liveness and safety of Go programs, aimed at detecting communication errors and deadlocks in a general class of realistic concurrent programs such as those with unbounded thread creation, dynamic channel creation and recursion. Our work infers from a Go program an abstract representation of its communication patterns as a behavioural type. We define a symbolic execution semantics for types, which allows us to check for the absence of communication errors and liveness in a finite state space. By checking a syntactic restriction on channel usage in types, dubbed fencing, we ensure that programs are made up of finitely many different communication patterns that may be repeated infinitely many times, ensuring decidability and soundness of our analyses. Our analysis and inference have been implemented in a publicly available tool-chain. At the end of the talk, we do a short demo of our tool. http://mrg.doc.ic.ac.uk/tools/gong/ This talk is part of the Logic and Semantics Seminar (Computer Laboratory) series. This talk is included in these lists:
Note that ex-directory lists are not shown. |
Other listsInternational Cambridge Neuroscience Seminars MRC Cancer Unit Seminars Type the title of a new list here King's Review Salons EA: CambridgeOther talksCANCELLED: The Impact of New Technology on Transport Planning The Digital Railway - Network Rail MEASUREMENT SYSTEMS AND INSTRUMENTATION IN THE OIL AND GAS INDUSTRY Colorectal cancer. Part 1. Presentation, Diagnosis and Intervention. Part 2. Cellular signalling networks in colon cancer and the models to study them - a basic research perspective Biomolecular Thermodynamics and Calorimetry (ITC) Intelligent Self-Driving Vehicles |