Stephan Boyer
stephanboyer.com · Personal blog · on HN since 2011
Stephan Boyer writes about type theory, functional programming concepts, proof engineering, and web topics like whether Google runs JavaScript.
What HN saysHN links his explanations of covariance and contravariance, monads, and higher-kinded types. One commenter calls the covariance post good and down-to-earth.
25HN people shared it
6linked it in comments
33stories submitted
1.6Kstory points
6 years agolast shared
2011people per year2026
Most-shared posts
- 1Higher-rank and higher-kinded types7 people · 13 points · first shared 2016 · discussion on HN
- 2Does Google execute JavaScript?3 people · 342 points · first shared 2016 · 106 comments on HN
- 3What are covariance and contravariance?3 people · 238 points · first shared 2017 · 66 comments on HN
- 4Region-based Memory Management3 people · 12 points · first shared 2013 · 1 comments on HN
- 5Show HN: A simple “stateless” password manager for Chrome2 people · 40 points · first shared 2014 · 47 comments on HN
- 6My hobby: proof engineering (2017)2 people · 2 points · first shared 2020 · discussion on HN
- 7Monads part 1 a design pattern2 people · first shared 2015
- 8My unusual hobby1 people · 856 points · first shared 2017 · 147 comments on HN
- 9Show HN: Netflix Party – Synchronize Netflix Video Playback1 people · 58 points · first shared 2015 · 30 comments on HN
- 10Real-time Ray Tracing in JavaScript1 people · 6 points · first shared 2013 · 1 comments on HN
- 11Fun with Promises in JavaScript1 people · 5 points · first shared 2015 · 4 comments on HN
- 12Generating Domain Names with Markov Chains1 people · 5 points · first shared 2013 · discussion on HN
- 13The Di Vergent Code1 people · 4 points · first shared 2016 · 1 comments on HN
- 14The Pastiche Test1 people · 4 points · first shared 2016 · discussion on HN
- 15Type safe dimensional analysis in Haskell1 people · 3 points · first shared 2017 · discussion on HN
What HN people wrote when they linked it
curryhoward · 2018-01-22
> Do you have an example of a language that does what you're looking for?
Dependently typed programming languages such as Coq and Idris let you write proofs about your programs. These languages are fairly academic, and most engineers probably won't find it worthwhile to use these tools. Personally, I love them. I wrote a short article about my experience with Coq: https://www.stephanboyer.com/post/134/my-unusual-hobby
seagreen · 2016-07-24
Great point! I found this for python: https://www.stephanboyer.com/post/9/monads-part-1-a-design-pattern, but it definitely focuses more on explanation than practical use. A list of "how to practice with monads in various languages" would be a neat thing to have.
kreetx · 2017-10-30
Here is a good and down-to-earth explanation: https://www.stephanboyer.com/post/132/what-are-covariance-and-contrava…
thijsvandien · 2016-12-09
Higher-Kinded Types
"With higher-kinded types [...] type operators can be parameterized by other type operators. Java doesn’t support higher-kinded types, but, if it did, you would be able to write something like this:"
class GraphSearch<T> {
T<Node> frontier;
}
Source: https://www.stephanboyer.com/post/115/higher-rank-and-higher-kinded-ty…
domenzain · 2015-02-19
Stephan Boyer teaches about them in a peculiarly pragmatic way. Haskell programmers often abstract application-specific computations into monads and use them as a sort of interface—a functional API.
http://www.stephanboyer.com/post/9/monads-part-1-a-design-pattern