Sunday June 3rd
GSoC and RustReach Day 21 and Lambda Conf Workshop
Pre-Conf
- This was the first day of LambdaConf. The first presentation was by Paul. Paul was a part of my local Haskell group, and I know him quite well, so it was really cool to see him again at LambdaConf.
Typed FP on the Job: Why bother
- Algebra on Type
- A monad is: function that can possibly have an effect into a value
- make everything a value
- failure is a value so you have control over it
- algebraic property: total function
- “log failures of a Monadic function” taken from Reason (article)
- know what code does before it runs as a developer
- as a business, economically worthwhile
Tony’s Hop workshop : FP Data61 Course
- I really really enjoyed this workshop.
- defined w/ prefix
h 55 88
vs infix55 `h` 88
- datatypes - uppercase
-
if starts w/ colon is infix position by default
Shape
is algebraic data type: non overlapping patternsdata Natural = Zero | Successor Natural deriving (Eq, Show)
one = Successor Zero
two = Successor One
add :: Natural -> Natural -> Natural
add Zero y = y
add (Successor x) y = Successor (add x y)
data List t = Nil | t :. List t deriving (Eq, Ord)
(t) binds tighter than cons (:.)
const a -> b -> a
:kind
type of types is called its kind- monads: used so we don’t have to same code over and over again
- All applicatives are functors
- Applicatives at superclass have pure
- Backus ‘77 “Can we be liberated from Von Neumann style?”
Keynote (Michael Stay)
- Pi-calculus vs Rho-Calculus
- I really really enjoyed this talk, also. I’m not into crypto, but it was fascinating. I also enjoyed the historical references (to Hilbert and Turing, Church and Leibniz).
- Too bad his shop is in Scala, though :P
- calculus - comes from pebble (counting with pebbles)
- notation and method of applying that notation
- reflective calculus
-
Hilbert
if you could express a programme mathematically perhaps you could solve it mathematically. lambda x . T-abstraction
- stochastic pi-calculus (Microsoft paper)
- RHO (Reflective higher-order) calculus
- Ian Stark - categories between functors
- structural type
- behavioral type
- Greg Meredith
- distributed vs verified computing
- distributed: slice into smaller bits, get different outputs
- should have same result
Written on June 3, 2018