[Haskell-cafe] [GSoC] WWW::Mechanize-like package for Haskell

Max Desyatov explicitcall at googlemail.com
Mon Apr 7 11:35:15 EDT 2008


On Mon, Apr 7, 2008 at 4:11 PM, Thomas Schilling
 <nominolo at googlemail.com> wrote:
 >  It doesn't have to be perfect.  Make sure you know how to use monad
 > transformers.  Also take a look at tag soup and the various HTML/XML
 > parsers.  I'm sure there's plenty to work on.
 >
 >  My guess would be, that you try to write non-trivial example applications
 > and see what is needed.  For example, you could write a script to
 > download/upload a Haskell wiki page logging in if necessary.  Take a look of
 > what other WWW::Mechanize packages are used.  That kind of stuff.
 >
 >  Also, for a GSoC proposal you should try to convince the mentors, why your
 > project is useful for Haskell in general.  So maybe you have some more
 > arguments there, too.
 >
 >  / Thomas

 There's many benefits of having such library in Haskell: improved
 automated testing (as Yitzchak Gale mentioned) due to pure nature of
 inner algorithms (BrowserAction can be pure and be transformed into IO
 only on demand), static typing (just hate a bunch of stupid bugs while
 writing all those scripts in python/perl).  We can use powerful
 HTML/XML parsers available there in Haskell (HXT with its "arrowed"
 XML filters).

 Haskell community will definitely benefit from such library. Firstly,
 as I see, in indirect way: I know many people that don't want to use
 or learn more about Haskell, saying it lacks libraries for their
 everyday work.  Network libraries still aren't "cool" enough, and
 personally I want to improve them at least to the point when I can say
 "look! here's the network libraries and they aren't worse than yours,
 even better: pure and checked!" :).  Secondly, new libraries are
 useful for the community directly, we have aforementioned lambdabot,
 e.g.  I'd like to write some bots looking at new changes at
 haskellwiki or something like that, thing I'm doomed to code in
 sh&curl/perl/python now.

 --
 Max


More information about the Haskell-Cafe mailing list