Innehållsförteckning
Deriving Combinator Implementations
Can We Derive Combinators from Specifications?
Example: Specifying Lists
Axiomatising Lists
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 1: A Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
Strategy 2: A Simplified Term Implementation
A Problem
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Interlude: What is a Context?
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Strategy 3: Context Passing Implementation
Summary of Strategies
So?
Specifying Monads
Specifying Run
Specifying Failure
Failure/Monad Interaction
Failure/Monad Interaction
Missing Laws
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
How Do We Choose Simplified Forms?
Simplified Term Implementation
What About Context Passing?
Summary So Far…
Prettyprinting Library
Prettyprinting Operations
Horizontal Composition
Interesting Laws
Specialised Laws
Results
Summary
|