Issue 16

  • Why building web-apps in Haskell is harder than it ought to be

    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.

  • OverloadedLabels Considered Awesome

    The excellent new benefit of the IsLabel class is that you can look at the type-level string and return a value dependent on that type.

  • Bitrot-free Scripts

    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.

  • Climbing the infinite ladder of abstraction

    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.

  • Foundation: an alternative prelude with batteries and no dependencies

    This package has the following goals: provide a better and more efficient prelude than base’s prelude.

  • The Four Flaws of Haskell

    Last year I made a list of four flaws with Haskell. Most have improved significantly over the last year.

  • Happy 10th birthday pandoc!

    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.