Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Contracts for Getting More Programs Less Wrong

Strange Loop Conference via YouTube

Overview

Explore the power of contracts in programming through this 37-minute conference talk from Strange Loop. Learn how contracts allow for expressing preconditions, postconditions, and internal invariants as code, enhancing documentation and runtime checks. Discover the complementary nature of contracts to types and their ability to express complex conditions. Compare contracts to dependent types and unit testing, and understand their value in teaching correct programming across paradigms. Examine the Java Modelling Language (JML) and C0, a simplified version for introductory data structures. Gain insights into using contracts to improve algorithm writing and test development. Witness a real-world application of JML in diagnosing and fixing a bug in java.utils.Collection.sort(). Follow along as Rob Simmons covers topics including the Leap, the Gap, contracts in functional languages, Fibonacci implementation, loop invariants, compile-time guarantees, and Timsort.

Syllabus

Introduction
The Leap
The Gap
The First Takeaway
Contracts in Functional Languages
Fibonacci
Writing Fibonacci
Loop invariant
Compile time guarantees
Timsort
Conclusion

Taught by

Strange Loop Conference

Reviews

Start your review of Contracts for Getting More Programs Less Wrong

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.