Adventure with Types in Haskell - Simon Peyton Jones (Lecture 1)
jasonofthel33t0 HN recommenders · 2015–2025
69K views · lecture · evergreen · Uploaded 2014-05-17
Simon Peyton Jones's first lecture on types in Haskell from the Oregon Programming Languages Summer School 2013. It covers type classes and how they relate to OOP, subtyping and polymorphism.
Mostly cited by timestamp for specific explanations, such as how type classes map to OOP and why QuickCheck is a great type class example.
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
49:55How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
1:31:06William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
PapersWeLove
31:44The Value of Values with Rich Hickey
InfoQ
46:09Why Isn't Functional Programming the Norm? – Richard Feldman
Metosin
4 comments from Hacker News
I've seen Evan's talk. Evan confuses the presentation of features with the value of those features. (I suppose one could solve the difficulties people have in learning Mathematics by throwing out everything after Algebra I; another solution, however, might be to do a better job teaching the more difficult stuff.) Just because you shouldn't expose new programmers to advanced concepts on the first day doesn't mean they shouldn't be a part of the language. Similarly, the fact (<~) might confuse someone new to Elm isn't a reason for removing it from the language. I'm sympathetic to the concern that some code is too "clever" or dense; but Elm swings the pendulum too far. (Btw, type-classes are not incidental complexity: [VIDEO] [LINK] )
Yes Haskell type classes are interfaces from OOP point of view. And given time on the weekend I might try to find out the talk given by SPJ about this very issue. Polymorphism and dynamic dispatch are part of OOP. EDIT: Found Simon's talk Adventure with Types in Haskell, part 1 and part 2: [VIDEO] [LINK] At 1:01:01 on the first lecture he discusses how Haskell relates to OOP in regards of subtyping and generic polymorphism and how although different on the surface they share those CS concepts in their own ways. [VIDEO]
Also: it's the coolest example of type classes Simon Peyton Jones knows and he explains why here (around 34-35 min): [VIDEO]
Thankfully this fellow Simon Peyton Jones has a talk about how they map into OOP paradigm. "Classes, Jim, But Not as We Know Them — Type Classes in Haskell: What, Why, and Whither" [LINK] "Adventure with Types in Haskell" [VIDEO] [LINK] On the first lecture he discusses how Haskell relates to OOP in regards of subtyping and generic polymorphism and how although different on the surface they share those CS concepts in their own ways.