Saturday May 26th

GSoC and RustReach Day 13

May Day Convoluted

  • Phil gave a talk similar to his DOM talk, but he interestingly mentioned a few papers, including Day’s Convolution and Arthur Xavier’s Comonads/UI thesis
  • Cofree meets Comonads
  • The dual of substitution is redecoration - Uustala and Vene


  • (Nate’s talk)
  • I actually understood a lot of it! :D It was more beginner-friendly, and on reusable code.
  • Reusable Code
  • Generalization of functions
  • type v class..typeclass
  • using => compiler takes care of implementation
  • Apply makes functor composable for any implementation of Functor
  • Final encoding (provide implementation as argument)
  • Initial encoding (interpret a result)
  • Aff is opaque: you have to run it to get what it contains (ie not reusable)
  • How can we make it reusable?
  • Datatype that represents semantics of Aff
Data RealCode
= ReadFile String
 | WriteFile String String
 | HttpGet String

...ReadFile String (Maybe String -> a)
...WriteFile String String (Unit -> a)
...HttpGet String (String -> a)
| Done a
  • ~> is a natural transformation
  • extensible datatypes let you combine types without boiler plate (lends themselves to more reusable code)


  • I met with my mentor today. He was in Paris at the RustConf there, so our internet was a bit spotty, but he really helped me with understanding Traits. My mission this week is to continue from chapter 11
  • traits: a way to share methods between two structs
  • passing traits : IO
  • Hash keys
  • Key has to implement Hash
  • I’ve been told that by next week, it’s sort of Discovery, where I see what issues I’d like to fix. Neat!

Back to May Day Convoluted

  • Chris B.
  • ontology: how do we define identity? Using Category Theory for ontological relationships


  • Monoids on Steroids
  • 1942: Category theory invented
  • 1958: Lisp invented
  • 1983: Symbolics
  • Lisp machines: latent typing, tagged architecture
  • XML: typed S expressions (closing tag has to be enforced)
  • Bill Gospher
  • Julia sets
Written on May 26, 2018