(This post seems almost too obvious to write, but I couldn’t find any other instances of people talking about this kind of pattern, or any libraries. Pointers welcome!)
If you’ve written code in Java, Python, or some other language with ubiquitous exceptions, then you are probably familiar with stack traces. Stack traces are great for a developer because they give you more contextual information about where in your code an error occurred, and often this can be enough to help you pin down the bug.
But what about in Haskell?
I was playing around with recursion-schemes, which is pretty cool. It’s very nice to be able to define interpreters like this, so my immediate thought was: can we do this for the lambda-calculus?
Strangely, I couldn’t find any examples online of lambda-calculus interpreters written as catamorphisms, and it actually turns out to be a little bit tricky. So here’s what I came up with.
Robin Hanson writes (some time ago, but it’s a classic):
So there is a bit of a tension here between the meaning that crusaders choose for themselves and the happiness they try give to others. They might reasonably be accused of elitism, thinking that happiness is good for the masses, while meaning should be reserved for elites like them. Also, since such folks tend to embrace far mode thoughts more, and tend less to think that near mode desires say what we really want, such folks should also be conflicted about their overwhelming emphasis on happiness over meaning when giving policy advice.
I think there’s something interesting here, with my gloss on the interesting question being: when we intervene in other people’s lives, why don’t we try more often to make them meaningful rather than happy?
Everyone seemed to be very excited about Sapiens, Yuval Harari’s previous book, and I do like futurism, so I thought I’d give this a shot.
Firstly, it’s well-written. Harari’s style is engaging and direct. And when I say “direct” I mean he just says what he thinks. If he has an opinion on a topic, he just states it. And when he wants to make a case for a controversial position he doesn’t hedge. Biology shows that we are just organisms following the rules of nature, therefore freedom is a myth. God doesn’t exist, religions exist primarily as social structures to facilitate cooperation. There is nothing that clearly separates us from the animals, therefore our treatment of them is unconscionable. It’s a strong dose of materialist history, and I like it.
I was at the merger when I found out that I’d been murdered.
“Do you, Maria Klarner, take Damien Cartwright to be your lawful partner?”
It was a traditional ceremony, with a church and everything. Most people got hitched these days in a lawyer’s office, but the priest had a Masters in M&A, so supposedly it was all above-board.