HackerTubewatch
Surprise me
Frame from Adventure with Types in Haskell - Simon Peyton Jones (Lecture 1) Plays via YouTube's privacy-enhanced embed

Adventure with Types in Haskell - Simon Peyton Jones (Lecture 1)

6 videos recommended on HN
YouTube
Cited on HN 4 times, 2015–2025, never outright recommended score 0
Years with an HN recommendation, 2007–2026

Mostly cited by timestamp for specific explanations, such as how type classes map to OOP and why QuickCheck is a great type class example.

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.

“it's the coolest example of type classes Simon Peyton Jones knows and he explains why here (around 34-35 min)” (HN, 2017)

4 citations · Lectures · intermediate

4 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@ablesearcher Nov 2015 Cites it
on HN thread Making Elm faster and friendlier in 0.16
Read more
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: [this video] [link] )
Shows type classes are not incidental complexity
@pjmlp Dec 2016 Cites it
on HN thread Zygomys – An embedded scripting language for Go
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: [this 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. [this video]
SPJ discusses how Haskell relates to OOP, subtyping and polymorphism
@davnn Jun 2017 Cites it
on HN thread The Design and Use of QuickCheck
Also: it's the coolest example of type classes Simon Peyton Jones knows and he explains why here (around 34-35 min): [this video]
SPJ explains QuickCheck as coolest type class example around 34 minutes
@pjmlp Jan 2025 Cites it
on HN thread Great things about Rust that aren't just performance
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" [this 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.
SPJ on mapping Haskell type classes to OOP

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close