Haskell Weekly News: January 9, 2006

Submitted by dons on Sun, 01/08/2006 - 9:18pm.

Haskell Weekly News: January 9, 2006

Greetings, and thanks for reading the 19th issue of HWN, a weekly newsletter for the Haskell community. Each Monday, new editions are posted to the Haskell mailing list and to The Haskell Sequence. RSS is also available.

New Releases

  • A Faster Binary. Bulat Ziganshin posted a preliminary optimised Binary library, achieving excellent (de)serialization speeds of around 50 Mb/s in testing.

Resources and Tools

  • Haskell mail. Simon Peyton-Jones has put together a complete archive of the Haskell mailing list since its birth in Sept 1990 until Oct 2000 -- the date where the current mailman archive takes over. This is a valuable resource for the community.
  • haskell.org. John Peterson is seeking comments on the haskell.org move to MediaWiki. Currently only the front page is finished, and its time for comments. In the end this will allow anyone to come in and fix up the main haskell.org pages - the people, the projects, the help for beginners, all of it. One job that will be needed is to move the current hawiki contents onto MediaWiki. Feel free to start adding stuff to the new haskellwiki.


  • Language Shootout. Discussion took place on on haskell-cafe to improve the performance of the Haskell entries. This process has greatly improved some entries. Haskell is now the fastest entry for the concurrency benchmark, Chameneos. More can still be done. Some entries are being worked on here. The problems are quite short, and fairly easy to solve, so fire up the profiler and hack!
  • MonadZero. Cale Gibbard opened a discussion about reinclusion of MonadZero, and removal of `fail' from the Monad class, citing the overuse of monadic typing to indicate the possibility of failure as one of the problems. Instead, MonadZero should be used for failure. References were made to the discussions that took place on this issue during the Haskell 98 process.
  • History channel. On a similar theme, an expedition took place on #haskell into functions and classes from earlier implementations of Haskell that had disappeared by Haskell 98. Of particular interest was the Eval class, and various things in the constructor class prelude from Gofer, such as:
    class (Functor f, Functor g) => NatTransf f g where
        eta :: f a -> g a
    and fun definitions like:
    undefined :: a
    undefined | False = undefined

Darcs Corner

A darcs gui. Eric Kow proposed resurrecting the darcs wxhaskell gui for a new darcs gui.

Quote of the Week

* autrijus stares at 
  type Eval x = forall r. ContT r (ReaderT x IO) (ReaderT x IO x) 
  and feels very lost
<shapr> Didn't you write that code?
<autrijus> yeah. and it works
<autrijus> I just don't know what it means.

Contributing to HWN

You can help us create new editions of this newsletter. Please see the contributing information, send stories to dons -at- cse.unsw.edu.au. The Darcs repository is available at darcs get http://www.cse.unsw.edu.au/~dons/code/hwn