[Haskell-beginners] Web frameworks

Michael Snoyman michael at snoyman.com
Fri Jun 17 14:53:53 CEST 2011

On Fri, Jun 17, 2011 at 3:01 PM, Mats Rauhala <mats.rauhala at gmail.com> wrote:
> On 08:30 Fri 17 Jun     , Manfred Lotz wrote:
>> Hi there,
>> There are some web frameworks out there, as snap, yesod, happstack, and
>> perhaps even more.
>> I'd like to get a recommendation which web framework might be easiest to
>> get into, and to use for a haskell beginner.
> My opinion is that you should go with Happstack. It doesn't hold your
> hand as Yesod does, and enables you to learn a bit at the same time.
> But the real deal comes from the fact that Happstack is already mature,
> and has pretty good documentation. The Yesod people are doing a great
> job with their book, but as long as it's only half finished, it's a pain
> to learn Yesod. There seems to be no api docs whatsoever.

(Note: I'm the leader developer on Yesod.)

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.

As for documentation: the Yesod book as it stands is already pretty
thorough. The entire basics section is complete, sans minor
improvements that are constantly happening. Some of the more advanced
features are not fully documented, but I'm not sure if you could say
otherwise about Happstack (or Snap for that matter).

And if by "API docs" you mean the Haddocks autogenerated on the
Hackage server... unfortunately, that's a known issue with Hackage,
outside of our control. But the sources themselves have Haddocks, and
you can generate the documentation locally with some simple changes to
your cabal config file.

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.


More information about the Beginners mailing list