[Haskell-beginners] Web frameworks

Michael Snoyman michael at snoyman.com
Sun Jun 19 05:12:19 CEST 2011


That's a very good question, to which Chris and Lyndon have already
hinted at the answer. But there's more to it than that:

* Julius (Javascript) actually isn't a different syntax at all, it's
simply a pass-through parser.
* With Lucius and Cassius (for CSS), each one provides some syntactic
sugar over plain CSS that people like.
* All three languages allow for variable interpolation, including
type-safe URL interpolation.
* Lucius and Cassius automatically minify their output.
* We get many compile-time checks, but on variable existence and
correct typeness, and well-formedness of the file.
* These systems compose very nicely via widgets.
* And via these widgets, we're able to easily concatenate multiple
templates into a single file to be efficiently served via one HTTP
request.

Michael

On Fri, Jun 17, 2011 at 5:49 PM, Haisheng Wu <freizl at gmail.com> wrote:
> Yesod is cool though I know a little about that.
> Actually I have one question that what's the reason it has 'special' (a
> better word?) style at programming CSS and JavaScripts?
> Seems like no other frameworks doing that? (Correct me if I am wrong)
> Thanks.
> -Simon
>
>
> On Fri, Jun 17, 2011 at 9:38 PM, Christopher Done <chrisdone at googlemail.com>
> wrote:
>>
>> On 17 June 2011 14:53, Michael Snoyman <michael at snoyman.com> wrote:
>>>
>>> I'm not saying Happstack or Snap are bad frameworks, quite the
>>> opposite. But I don't think these generic "X isn't mature" or "Y has
>>> bad documentation" do much to help newcomers become acclimated.
>>
>> I'll back this up, Yesod has quite an extensive book with tips and tricks
>> including corner cases and such: http://www.yesodweb.com/book
>>>
>>> I'd like to respectfully disagree with this assessment. I'm not quite
>>> sure what you mean by "mature", but Yesod has been developed actively
>>> for two years, has the vast majority of features you'll need on a
>>> project, is in use by many production settings and has the highest
>>> performance figures of any of the big three frameworks.
>>
>> FWIW I think he means the API changes, not that the software itself is
>> runtime-stable. The "developed actively" may imply a changing API. I don't
>> know whether this is true, but I think that's what he meant.
>> Anyway, I doubt maturity as in runtime stability matters that much to
>> newbies.
>> _______________________________________________
>> Beginners mailing list
>> Beginners at haskell.org
>> http://www.haskell.org/mailman/listinfo/beginners
>>
>
>



More information about the Beginners mailing list