I was enjoying writing Haskell till the time I was dealing with JSONs and talking to the Telegram API. But as soon as I wanted to deal with the database, write HTML templates, or process forms, I was hitting a lot of friction.
The excellent new benefit of the
IsLabelclass is that you can look at the type-level string and return a value dependent on that type.
There are good reasons why people like to use scripting languages. This blog post is going to demonstrate doing some non-trivial work with Haskell, and do so with a fully reproducible and trivially installed toolchain, supported on multiple operating systems.
Every time I climb to the next rung on the ladder of abstraction, those only a couple rungs below me (even if we’re all hundreds of rungs up!) find themselves perplexed.
This package has the following goals: provide a better and more efficient prelude than base’s prelude.
Last year I made a list of four flaws with Haskell. Most have improved significantly over the last year.
One might wonder whether it matters that pandoc is written in Haskell. Certainly it would have been possible to write a program that does what pandoc does in any language. But the security provided by Haskell’s type system has kept me sane when I have needed to make major changes or do large-scale refactoring.