5 ms·
You're looking at this the wrong way. The paper isn't showing Haskell is gnarly for a basic problem, it's using a basic problem to demonstrate a particular tech
by rebeccaskinner 4y ago
You're looking at this the wrong way. The paper isn't showing Haskell is gnarly for a basic problem, it's using a basic problem to demonstrate a particular technique that you can use in Haskell. There are plenty of simpler ways to implement this kind of thing in Haskell, and even some that are both simpler and show off some of the more unique features of Haskell. The goal here wasn't "let's find the best way to write fizzbuzz in Haskell", it was "let's show off how to build an interpreter to solve problems, using a small problem everyone is familiar with".
Haskell isn't ill-suited for something like fizzbuzz at all, it's just _also_ suited for things like quickly writing interpreters and solving problems that way when it makes sense.
- whateveracct 4y agoI find a lot of people don't get pedagogy. They want immediate, authoritative statements on what is good or bad. Haskell isn't really about that. It's about the 10s of equivalent ways to solve every simple problem. That's what makes it fun. And fun is Haskell's secret sauce.
- nearmuse 4y agoCase in point: it can prompt people to gush about a fizzbuzz implementation.
- wernercd 4y ago"10s of equivalent ways to solve every simple problem." Why doesn't C#, Java, etc have the same problem with perception because they have the same "many ways" to solve problems. "fun" brainfuck is fun too and no one uses it.
- epgui 4y agoBecause C#, Java, etc are more familiar to most people. People tend to struggle with unfamiliar things. Haskell is simple even if unfamiliar to you. Brainfuck is complex even if familiar to you.
- Jtsummers 4y ago> Haskell is simple even if unfamiliar to you. Brainfuck is complex even if familiar to you. I would actually swap these two descriptions. Haskell is complex, because it has many "complications" (in the sense of features). But those complications permit simple programs. Brainfuck is simple, it has few complications (only 8 instructions) but this forces complications into the programs written in it.
- epgui 4y agoSimplicity is not merely measured in the "number of things" you have, it's contextual. Otherwise we'd all be writing in binary representations because base two is the simplest way to communicate information. Simplicity is also "how many things" it takes to express an idea or do a useful thing. In many ways, written Chinese is simpler than written English.
- Jtsummers 4y agoWe seem to be in violent agreement.