Top all-time · #12265
Drup’s thingies
Personal blog · drup.github.ioprogrammingmath
Drup’s thingies is a personal blog at drup.github.io about programming and math. Since 2016, 6 different Hacker News readers have linked it 9 times, most often “Typing tricks: Difference lists (2016)”. The last post was in 2020, but the archive is still widely read.
Too few sampled comments (5) to say how often HN recommends it.?
Why HN links it
HN commenters link Drup's posts as references on OCaml and Reason topics: difference lists (difflists), a GADT-based typesafe printf tutorial, and currying and type-system trade-offs. No comment judges the writing itself.
Summarised by Claude from a sample of 5 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Typing tricks: Difference lists (2016)5 people · 7 mentions · first linked 2016-08-11
What Hacker News says?
I'm gonna argue beside the point, but currying has negative semantics and type system impact in a language with uncontrolled side-effects. It also prevents some optimizations and new type features. Don't take my words for it: https://github.com/facebook/reason/pull/1299#issuecomment-30... https://realworldocaml.org/v1/en/html/imperative-programming... https://drup.github.io/2016/08/02/difflists/ https://bucklescript…
Comment linking /2016/08/02/difflists/
on “Reason 3”Submitted Tyre – Typed regular expressions as a story · 109 points
HN discussionHonestly I believe modeling such thing in JS as an initial iteration would have drastically changed what ReactJS is today, and likely for the worse. No proof of that, aside from the fact that iterating it in SML gave the rather paradigm-shifting ReactJS we know today. Can't speak for Jordan but I'm guessing that the answer is "it just felt right". So you can consider ReactJS as a manual program extraction from SML.…
Comment linking /2016/08/02/difflists/
on “Messenger.com Now 50% Converted to Reason”Submitted Regenerate: test generation for regular expression engines as a story · 4 points
HN discussionI also just learned about it. I found this explanation of what it is: https://drup.github.io/2016/08/02/difflists/ It's a slightly confusing name, though; it makes me think of a difference list, which seems to be a completely unrelated data structure (basically a rope). http://h2.jaguarpaw.co.uk/posts/demystifying-dlist/
Comment linking /2016/08/02/difflists/
on “A reckless introduction to Hindley-Milner type inference (2019)”Submitted Typing tricks: Difference lists (2016) as a story · 1 points
HN discussionIf you want to have fun, I also have a small tutorial on how to make a typesafe printf function with GADTs (and that technique is actually used in the OCaml stdlib!) https://drup.github.io/2016/08/02/difflists/ I also have some slides (more entertaining and probably better introduction) here: https://www.irif.fr/~gradanne/papers/gadts.pdf
Comment linking /2016/08/02/difflists/
on “Sum Types Are Coming (2015)”Submitted Typing Tricks: Diff lists as a story · 1 points
HN discussionIf I understand your question correctly, no, it doesn't. Actually, the thing that you "unparse" doesn't even have to come from a regex matching to begin with. As long as the type matches, everything is fine. If you are interested by unparsing, I would advise you to read the (famous) paper functional unparsing by Danvy[1]. The module Printf and Format of the OCaml standard library are basically this paper on steroid.…
Comment linking /2016/08/02/difflists/
on “Tyre – Typed regular expressions”