Haskell web dev - ASP .NET analogue?

The state of Haskell web development is exciting and messy. We don't
have a de facto way to do it like Rails or Django or ASP .NET, but we
do have many imitations and ideas popping up. You can easily judge
whether the community is happy with the state of web development by
the number of new web frameworks coming out all the time.
I'm wondering if there is a ASP .NET analogue for Haskell. ASP .NET
manages compiled languages like C# well by compiling a given page when
you run it, and also allowing you to build pages into DLLs and then
link them in your project. I have used this development process for a
year in a commercial business and quite like it. It's just really easy
to develop. Often you make little mistakes on a given page, so you
just edit one bit of code -- you don't want to have to run a command
to reload this code yourself. I think that, with Hint, one could write
a Haskell equivalent. The nice thing is you can test your Haskell code
in GHCi and then save the page and load it in the browser and have it
auto-recompile. As to how pages are generated I guess is up to whoever
is using it.
You have a kind of standard separation in ASP .NET:
backend.vb:
Sub submit(sender As Object, e As EventArgs)
lbl1.Text="Your name is " & txt1.Text
End Sub
frontend.asp:
<form runat="server">
Enter your name:

Re the auto-recompiling part, here is one of my favourite tools. I have used it to auto-build happstack, yesod and hakyll apps/sites: # "continuous integration" - recompile and restart # whenever a module changes. sp is from searchpath.org, you might # need the patched version from http://joyful.com/repos/searchpath ci: sp --no-exts --no-default-map ghc --make -o app --make app.hs --run Also, you didn't ask for this but while I'm pasting.. here's a thorough darcs posthook, for doing something when a repo's content changes (add the below to _darcs/prefs/defaults): apply posthook make build apply run-posthook pull posthook make build pull run-posthook record posthook make build record run-posthook obliterate posthook make build obliterate run-posthook
participants (2)
-
Christopher Done
-
Simon Michael