Top all-time · #2338
Luke Palmer
Personal blog · lukepalmer.wordpress.comprogrammingphilosophy
Luke Palmer writes Private Site, a personal blog at lukepalmer.wordpress.com about programming and philosophy. Since 2009, 35 different Hacker News readers have linked it 51 times, most often “Semantic Design”. No feed was found, so read it on the site itself.
Most-linked posts?
- /2010/01/24/haskell-antipattern-existential-typeclass/3 people · 4 mentions · first linked 2010-02-20
- /2010/01/24/haskell-antipattern-existential-typeclass/3 people · 3 mentions · first linked 2016-01-20
- /2008/08/10/mindfuck-the-reverse-state-monad/2 people · 2 mentions · first linked 2012-08-07
- Semantic Design2 people · 2 mentions · first linked 2013-05-19
What Hacker News says?
> If you take FP to its logical conclusion, FP is a slippery slope that eventually leads to Monad-Transformer centric designs. I don't understand what you mean by this, and I write production haskell for a living. We don't have teetering towers of transformers, and the best advice I've seen is often "put away the shiny tools and just use functions", https://lukepalmer.wordpress.com/2010/01/24/haskell-antipatt... . S…
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “Towards Scala 3”Submitted IDE WTF as a story · 173 points
HN discussionThis sounds like the Existential Antipattern, from Haskell land. I don't know to what degree it translates to this setting. https://lukepalmer.wordpress.com/2010/01/24/haskell-antipatt...
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “Generics and Compile-Time in Rust”Submitted Disrespect in Education (2014) as a story · 78 points
HN discussionIn fact, yes! This is counterintuitive if you think of the floats as a model for the reals, but in fact the floats give the wrong intuition, being (a finite subset of) rationals. [1] details this and refers to two related articles (particularly [2], which I find a lighter read). This fact is also remarked on in [3] (by example of the signum function being uncomputable). For the particular example of a step function,…
Comment linking /2008/08/11/all-functions-are-continuous-always/
on “Some Fundamental Theorems in Mathematics (2019) [pdf]”Submitted What I don’t like about Python as a story · 48 points
HN discussionThey are, until someone makes a five parameter monster because "someday I'll want that genericity." To be honest, though, I just googled the extensions I could remember until I hit one that hinted at creating a situation where the compiler simply doesn't have enough information to compile your code. That said, yeah, UndecidableInstances look like a much better example. Especially when googling it turns up things lik…
Comment linking /2008/04/08/stop-using-undecidable-instances/
on “True Scala complexity ”Submitted Programming for a culture approaching singularity as a story · 30 points
HN discussionhttp://lukepalmer.wordpress.com/2012/01/19/sentences-and-par... is an interesting look at parallels between declarative programming (as in Prolog, or in jng's pseudocode language) and functional programming in languages like Haskell or ML.
Comment linking /2012/01/19/sentences-and-paradigms/
on “I want to fix programming”Submitted Lazy Partial Evaluation as a story · 24 points
HN discussionDan Doel [1], who works with Edward Kmett, gets it too. And there's the inimitable Luke Palmer [2], whose blog contains nuggets of gold for those who care to dig through the archives. [1] http://www.reddit.com/user/doliorules [2] http://lukepalmer.wordpress.com/tag/haskell/
Comment linking /tag/haskell/
on “ There’s more to mathematics than rigour and proofs”Submitted My Premonition as a story · 8 points
HN discussionIt depends on your definition of OO, because there isn't "a" definition of OO. Typeclasses in Haskell aren't classes, as I well know, but on the other hand it is true that they do fill in for some of the roles that interfaces do in OO languages. Fundamentally, what is an object? A collection of data and associated operations as an atomic unit. Typeclasses do fit that role. Another way to do "OO" in Haskell is: data…
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “Books Programmers Don't Really Read”Submitted My paradigm is better than your paradigm as a story · 6 points
HN discussionNo way to move files between repositories and retain their history. Luke Palmer talked about this a little here: http://lukepalmer.wordpress.com/2008/11/12/sketch-of-udon-ve...
Comment linking /2008/11/12/sketch-of-udon-version-controlpackaging-system/
on “Torvalds: git vs CVS”Submitted Forever Unemployed as a story · 6 points
HN discussionAd-hoc polymorphism is valuable, and objects represent a clear way to express it You can do ad-hoc polymorphism using type boxes (existentially quantified type classes). Of if you think this is an anti-pattern, just plain old data structures plus (first-class) functions: https://lukepalmer.wordpress.com/2010/01/24/haskell-antipatt... Thin wrappers that slightly change functionality are often a business requirement,…
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “Object-Oriented Programming: A Disaster Story”Submitted Enumerating a context-free language; introducing the Omega monad as a story · 5 points
HN discussionA good example demonstrating this is the "reverse state monad" http://lukepalmer.wordpress.com/2008/08/10/mindfuck-the-reve... It sends state updates "back in time" to compute fixed points. The above article shows how you can compute the fibonacci stream using it.
Comment linking /2008/08/10/mindfuck-the-reverse-state-monad/
on “Applicative Functors”Submitted Encapsulation Considered Harmful as a story · 4 points
HN discussionDo notation is jokingly called a programmable semicolon. True, it is often used to model imperative computations with it, so that is the association people have with it. Also people come mostly from imperative backgrounds and look, we can bind something to a value. Finally something I get! And that is fine, let them play around with it like that. But if they look closer, they find out it is not really imperative. Wh…
Comment linking /2008/08/10/mindfuck-the-reverse-state-monad/
on “Do notation considered harmful”Submitted Encapsulation Considered Harmful as a story · 4 points
HN discussionSome more background https://lukepalmer.wordpress.com/2009/07/07/emphasizing-spec... .
Comment linking /2009/07/07/emphasizing-specialization/
on “Vatican: A lazy specializing virtual machine for purely functional languages”Submitted Enumerating a context-free language as a story · 4 points
HN discussionObviously it doesn't actually violate the laws of causality. However, it looks like it does. At a high level, I think this is essentially similar to the "time travel" you can get with continuations[1]. The first blog post[2] linked in the readme should make things clearer. [1]: http://matt.might.net/articles/programming-with-continuation... [2]: http://lukepalmer.wordpress.com/2008/08/10/mindfuck-the-reve... Essenti…
Comment linking /2008/08/10/mindfuck-the-reverse-state-monad/
on “Tardis--Haskell package for sending state backwards and forwards through time”Submitted Disrespect in Education as a story · 3 points
HN discussionI don't know about that. When you get to the "second-level" stuff, it can be weird. Lately, partially as an exercise and partially to get a project of mine going the way I'd like to see it going, I've been working with the State monad directly. Using the state monad is trivial. Understanding how the state monad does its thing is slightly less trivial, but just a matter of following along the definitions and doing th…
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “A Haskell Journey”Submitted Algebraic and Analytic Programming as a story · 3 points
HN discussionIn the last few months I've been drifting toward the idea that parametric polymorphism is in fact enough for everything, and subtype polymorphism isn't needed at all. Also relevant reading in this context: Haskell Antipattern: Existential Typeclass http://lukepalmer.wordpress.com/2010/01/24/haskell-antipatte...
Comment linking /2010/01/24/haskell-antipattern-existential-typeclass/
on “Abstract Libraries in Go”Submitted Programs are made of ideas as a story · 3 points
HN discussion