Our great sponsors
-
ihp
🔥 The fastest way to build type safe web apps. IHP is a new batteries-included web framework optimized for longterm productivity and programmer happiness
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
This is a fantastic post and I really appreciate your rationale (having faced similar struggles). A limited but simplified set of Haskell libraries that offers the same ergonomic benefits as Elm is very appealing! It would be great if this became a community project.
I'm not sure if the poster is from NoRedInk, but my only feedback is that I'd love to see some sample code that demonstrates the power of the handle pattern in use?
I followed a the link that discussed the pattern which then referenced this https://github.com/jaspervdj/fugacious. It would be better tho if there was a concise sample.
If this made you interested in trying out haskell for making web apps, check out IHP https://ihp.digitallyinduced.com/ It's the easiest way to get started with building haskell web apps :) IHP is designed for non-haskellers, so it's easy to start with for most people that haven't written much haskell yet.
I found about IHP a while ago and it sounds exactly like what I've been looking for in a web framework: Beginner-friendly, stable, type-safe, functional.
I got even more interested after I read your blog post on Auto Refresh[1], which sounds like it was heavily inspired by Phoenix's LiveView[2] (even though you don't mention it anywhere). Can you do a comparison between the two, in terms of how ergonomic and performant they are, etc.?
Another, unrelated question: I'd like to use something like HSX but I hate the verbosity of HTML. I'd much rather write Haskell or something like Pug[3] (formerly Jade). How much friction would there be in switching to one of these instead?
[1]: https://ihp.digitallyinduced.com/ShowPost?postId=a2d56dc7-d2...
[2]: https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html
[3]: https://pugjs.org/