
Shameless plug warning.
From what I can tell, there are two problems with WASH:
1) Everything must be done the WASH way
2) WASH is mostly broken with GHC 6.4
Let me elaborate a bit on #1.
Let's say I have a CGI interface pre-defined; I take certain parameters from a GET request and do certain things, generating certain headers no the result.
WASH is all centered around generating its own forms, naming its own fields, passing around its own state. It's not at all clear how to handle this myself, as I would with Perl or PHP.
If there is a way, please explain it and I'll be happy :-)
Perhaps you want to have a look at HSP? :-) It doesn't solve all your problems though; it still requires the output to be text/html (or text/xhtml rather), but hopefullly a future incarnation will be more general. Anyway, you can get it from http://www.cs.chalmers.se/~d00nibro/hsp Feedback greatly appreciated. :-) /Niklas