Главная
Study mode:
on
1
Intro
2
Programming without constraints
3
Compile time enforced constraints?
4
Refinement example: underconstrained
5
"Traditional" Refinement System Insight
6
Singleton Constraint Typing: Test
7
First Implement the Computation
8
Implement Compile Time Verification
9
Black Box to White Box Paradigm Shift
10
Embracing Literal Types
11
Data Type with Internal Structure (w/ error)
12
Summarizing the Key Ideas
Description:
Explore constraint typing with Boolean algebra in this Scala Days 2023 Seattle conference talk. Delve into how Scala 3's new features enable a composable constraint system that supports the full breadth of Boolean algebra. Learn about the limitations of primitive types in conveying sufficient constraints for safe function calls, and discover how to specify additional constraints on data types without changing them. Examine the drawbacks of under-constrained data specification and traditional refinement type approaches. Understand how union and match types in Scala 3 allow for user-defined constraints that can be evaluated at runtime or compile-time through inlining. Follow along as the speaker demonstrates the implementation of a singleton constraint typing system, showcasing the shift from black box to white box paradigms. Gain insights into embracing literal types and handling data types with internal structures. Suitable for software engineers interested in advanced typing techniques and program correctness in Scala. Read more

Constraint Typing with Boolean Algebra - Scala Days Seattle

Scala Days Conferences
Add to list