Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the concept of symmetry in programming language design through Daira Hopwood's conference talk at Strange Loop 2013. Delve into the experimental language Noether, which emphasizes symmetry to improve security, robustness, and efficiency in programming. Learn about its layered structure, object-capability security model, and support for various concurrency models. Discover how Noether incorporates transactional programming, distributed object models, and efficient failure handling. Gain insights into the language's implementation of parallelism, exception safety, and resource consumption control. Understand how symmetry properties facilitate program analysis and contribute to writing more secure and robust code. This 44-minute presentation offers a comprehensive overview of Noether's design principles, touching on both novel ideas and revisited concepts in programming language development.
Syllabus
Introduction
The problem
Software crisis
Symmetry
Comments
stratified languages
retaining properties
Why is it called Noether
What is Noether
Symmetry Parties
Structure
Safety
Honesty
Language properties
Performance
Parallelism
Explicit Parallelism
Local Mutual State
Failure Handling
Full State
Data Flow Concurrency
Message Passing Concurrency
Distributed Extension
Taught by
Strange Loop Conference