{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreih4he2pzxfy6aq6ryy2werywbfr266zztk2aiecrurrdxhww62jti",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3ml6yd76mzha2"
},
"path": "/t/is-there-an-idiomatic-haskell/14042#post_2",
"publishedAt": "2026-05-06T13:22:45.000Z",
"site": "https://discourse.haskell.org",
"textContent": "The question of “best practices” is something that comes up very often, and I am afraid this isn’t really a thing in Haskell at this time.\n\nFor example, every codebase I’ve touched has had a different logging solution. Some people like to use `mtl`, but others prefer the use of `transformers` directly. There are many powerful database libraries available.\n\nThere are things that come up more often than others – for example, I’ve never seen command-line parsers other than `optparse-applicative`, although other seemingly high-quality alternatives exist. Likewise, `amazonka` is _the_ fully-featured AWS client.\n\nIt’s a bit of a rambling answer to tell you that there is no such thing as a single vision of idiomatic Haskell, as far as I know. This can be both terrifying and freeing! Go ahead and do what feels right. One of the main benefits of Haskell is that it’ll be easy to refactor if you change your mind.",
"title": "Is there an idiomatic Haskell?"
}