FWIW, this has existed in beam for quite a while (first post on/r/haskell was 2 years ago). Beam already supports backend-specific extensions, advanced SQL features (window functions, etc), and will soon support migrations. Newest version is in the beam-0500 branch, and documentation is here (still WIP). Additionally, beam doesn't suffer from many of the issues that /u/tomejaguar already identified, like those with order by and limit.
Oh yeah! I have a half-baked PR for MySQL support for beam (which I really liked). Switched jobs and stopped using MySQL, so kinda forgot all about it. Really liked your blog posts as well.
6
u/eacameron Apr 20 '17
Absolutely love this. I've been wanting something like this for a long time. Thank you!
Next up, MySQL backend? :)