<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br></div><div>We're talking about web applications and Web 2.0 sites, which is the principal target of Rails and its ilk. For primarily static content-oriented sites, static HTML works just fine, but even in this case, you can do dynamic transformations on the HTML in order to provide a richer, more user-friendly surfing experience.</div><div><br></div><div>It's only a matter of time until browsers provide better accessibility for web apps and search engines start indexing JavaScript-generated content.</div><div><br></div><div>The era of HTML templates and heavy server-side HTML is coming to a close, for all but static content-oriented websites. The whole industry is moving in a dynamic direction (along with developer tools and libraries), and it would be a shame if a bunch of Haskell developers got together to write a really great Haskell web framework for the Internet as it was 5 years ago.</div><div><br></div><div>Times have changed. Haskell -> JavaScript is a much more fruitful direction to pursue, I think.</div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>Regards,</div><div><br></div><div>John A. De Goes</div><div>N-BRAIN, Inc.</div><div>The Evolution of Collaboration</div><div><br></div><div><a href="http://www.n-brain.net">http://www.n-brain.net</a> &nbsp; &nbsp;| &nbsp; &nbsp;877-376-2724 x 101</div></div></div></span></div></span></div></span></div></span> </div><br><div><div>On Jan 26, 2009, at 10:49 AM, Michael Snoyman wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div class="gmail_quote">On Mon, Jan 26, 2009 at 9:37 AM, John A. De Goes <span dir="ltr">&lt;<a href="mailto:john@n-brain.net">john@n-brain.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <br> The best approach is to push as much functionality into the client as possible. The ideal server-side framework consists of nothing more than a permissions-based interface to persistence and network services. That's it. Everything else is done on the client side, in JavaScript.<br> <br> Web designers can pretty easily style dynamically generated HTML, if the semantics are good -- you just need to let them capture that HTML in any given part of the application.<br> <br> What this means is that effort is probably best directed at Yhc/JavaScript and similar projects, which compile Haskell to JavaScript for execution on the client. Sure, some server-side work needs to be done, but it's extremely minimal. Far more needs to be done on the client-side. There's not many people working on that and the infrastructure is in need of more creative input and development resources.<br> </blockquote></div><br>That's great in theory, but then you end of with inaccessible web sites, those without Javascript are left out in the cold, and search engines won't index you. I think any framework should transparently make a site work the way you describe and as plain HTML.<br></blockquote></div><br></body></html>