Adventure with Types in Haskell - Simon Peyton Jones (Lecture 1)
jasonofthel33tCited 4× on HN, 2015-2025
69K views · 12 years ago · lecture · evergreen
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.
1:03:34Simon Peyton Jones - Linear Haskell: practical linearity in a higher-order polymorphic language
Curry On!
19K views • 8 years ago
1:04:16Simon Peyton-Jones: Escape from the ivory tower: the Haskell journey
Churchill College, University of Cambridge
170K views • 9 years ago
6:23Simon Peyton Jones - Haskell is useless
bunidanoable
385K views • 14 years ago
1:04:35The Algebra of Algebraic Data Types
London Haskell
27K views • 13 years ago
12:56Stephen Wolfram's Introduction to the Wolfram Language
Wolfram
924K views • 12 years ago
1:00:58The Next Five Years of ClojureScript - David Nolen
Metosin
19K views • 10 years ago
56:58Philip Wadler - Propositions as Types (Lambda Days 2016)
Erlang Solutions
20K views • 10 years ago
1:42:53Edward Kmett - Type Classes vs. the World
Boston Haskell
36K views • 11 years ago
1:28:59Clojure for Lisp Programmers Part 1 - Rich Hickey
ClojureTV
25K views • 13 years ago
59:03Breaking Down Programming Paradigms: APL's Surprising Learning Curve // Aaron Hsu // Dyalog '17
Dyalog User Meetings
7K views • 9 years ago
1:09:24Effective ML
Jane Street
30K views • 10 years ago
1:58:46Dynamic Languages Wizards Series - Panel on Language Design
Eduardo Cavazos
16K views • 14 years ago
1:04:45Stanford Seminar - Concatenative Programming: From Ivory to Metal
Stanford Online
14K views • 8 years ago
1:04:53Julia: to Lisp or not to Lisp?
European Lisp Symposium
24K views • 10 years ago
39:40"Type-Driven Program Synthesis" by Nadia Polikarpova
Strange Loop Conference
15K views • 8 years ago
8:45Racket: Why I Think It’s a Great Language, and Why I’m Not Using It Anymore
Leandro Facchinetti
19K views • 5 years ago
54:31Does APL Need a Type System? by Aaron W Hsu at #FnConf18
ConfEngine
6K views • 7 years ago
1:19:57Simon Peyton Jones: Data Parallel Haskell
nuACM
28K views • 16 years ago
1:06:26Over the Shoulder 1 - Text Preprocessing in Forth
Andreas Wagner
25K views • 12 years ago
50:49Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019
KanDDDinsky
74K views • 6 years ago
4 comments from Hacker News
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.
Also: it's the coolest example of type classes Simon Peyton Jones knows and he explains why here (around 34-35 min): ▶ this video
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
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 )