{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreieftmwera5kget7ksuhgd7q5v37fy2zrgqclim6gzz2amuz7pyi64",
"uri": "at://did:plc:pi6woz4d47bkuws673w2il2r/app.bsky.feed.post/3mjcvzqgd44k2"
},
"path": "/t/ann-first-release-of-hs-wayland-scanner/13925#post_1",
"publishedAt": "2026-04-12T16:10:49.000Z",
"site": "https://discourse.haskell.org",
"tags": [
"Message Definition Language",
"river",
"MicroHs",
"Codeberg.org",
"hs-wayland-scanner"
],
"textContent": "I’ve just uploaded to Hackage the first release of `hs-wayland-scanner`, an implementation of the Wayland Message Definition Language to produce low-level Haskell bindings for Wayland client/server protocols.\n\nIt will process multiple protocols in a single run, checking for dependencies, in order to properly generate imports for all modules. All depending protocols must be generated at once and unresolved dependencies will produce an error.\n\nThe generated Haskell modules will also include the documentation, that can be processed with Haddock.\n\nThe package also includes some examples that I hope will be useful to start playing with it. I wrote it to start digging into the Wayland world and possibly produce some higher level API for river. It seems like I’m not the only one aiming at this goal…\n\nThe code can be compiled with MicroHs, even though the generated bindings cannot.\n\nMore information can be found on the project repository:\n\nCodeberg.org\n\n### hs-wayland-scanner\n\nA Haskell implementation of the Wayland Message Definition Language\n\nBest regards,\nandrea",
"title": "[ANN] first release of hs-wayland-scanner"
}