Welcome to issue 76 of HWN, a newsletter covering developments in the Haskell community.

The ICFP Programming Contest is this weekend! Go forth and kick some butt, Haskell-style. A big thank you in advance to all those at PSU and U Chicago who are working hard to write and run the contest.

Community News

Luke Palmer (luqui) is having a great time in Antwerp.

John Goerzen's son is so cute, it should be illegal.


Haskell-cafe on lively.com. Edward Kmett has created a Haskell Cafe room on Google's new virtual-world platform Lively (which is unfortunately windows-only at the moment).

Uniplate 1.2. Neil Mitchell announced the release of Uniplate 1.2, a library for reducing boilerplate code by performing generic traversals. Version 1.2 features some bug fixes, a compatibility layer with Compos and SYB, and a 25-50% performance increase over Uniplate 1.0.

GHC 6.8.2 stable in Gentoo. Luis Araujo announced that GHC 6.8.2, and its accompanying libraries, have now been marked as stable in the official Gentoo portage tree.

The Monad.Reader (11) - Call for Copy. Wouter Swierstra announced a call for copy for Issue 11 of the Monad.Reader. The submission deadline is August 1, although you should let Wouter know as soon as possible if you plan to submit something.

hCsound. John Lato announced the initial public release of hCsound, a Haskell binding to the Csound audio processing language API.

Portland and OSCon. John Goerzen inquired whether any Haskellers in Portland would be interested in getting together during OSCon July 23 or 24.

Faster graph SCCs. Iavor Diatchki announced that he has implemented Tarjan's algorithm for computing the strongly connected components of a graph, which is considerably faster than the containers package for larger graphs. Iavor's implementation is available in the GraphSCC package.

parallel map/reduce. jinjing exhibited some code for doing parallel map/reduce computations.

Disciplined Disciple Compiler. Ben Lippmeier announced version 1.1 of the Disciplined Disciple Compiler (DDC), an explicitly lazy dialect of Haskell, with support for first class destructive update of arbitrary data, computational effects without the need for state monads, and type directed field projections. Version 1.1 includes a number of new features and more example code.

darcs 2.0.2. David Roundy announced the release of darcs 2.0.1 and 2.0.2. These releases fix quite a few bugs, and users of darcs 2 are strongly recommended to upgrade.

Google Summer of Code

Progress updates from participants in the 2008 Google Summer of Code.

GHC plugins. Max Bolingbroke is working on dynamically loaded plugins for GHC. Over the past two weeks, he has implemented type safe dynamic loading, an annotations system, and some sample plugins.

Hoogle 4. Neil Mitchell (ndm) is working on Hoogle 4. This week, he has been working on type searching, using a much more efficient algorithm than type search in previous versions of Hoogle. Next week, he plans to finish off type search and work on the build system.

DPH physics engine. Roman Cheplyaka (Feuerbach) is working on a physics engine using Data Parallel Haskell. He spent most of this week fixing bugs and improving existing simulation code. And he now has something to show for it!

Language.C. Benedikt Huber (visq) is working on Language.C, a standalone parser/pretty printer library for C99. This week, he created a semantic representation for declarations and types, and a way to convert between an AST representation and a semantic representation.

Cabal dependency framework. Andrea Vezzosi (Saizan) is working on a make-like dependency analysis framework for Cabal.

Generic tries. Jamie Brandon is working on a library for efficient maps using generalized tries.

GHC API. Thomas Schilling (nominolo) is working on improvements to the GHC API.


Proposals and extensions to the standard libraries.

Extensible exceptions. Ian Lynagh sent out a proposal to replace the current exception mechanism in the base library with extensible exceptions, a la Simon Marlow's extensible extensions paper. Deadline for discussion is 25th July.


Qualified import syntax badly designed (?). Neil Mitchell began a discussion about Haskell syntax for qualified module imports (and module imports in general).

Trouble with zip12. Michael Feathers is having trouble with the zip12 function and some weird SQL-related errors...

Santana on my evil ways. John D. Ramsdell set off a spate of Haskell song and poetry.

Alternatives to convoluted record syntax. Dougal Stanton asked about alternatives to convoluted record update syntax, eliciting a number of interesting responses.


Lectureship in Functional Programming, Nottingham. Graham Hutton announced an opening for a Lecturer in the Functional Programming Lab in Nottingham, a recently formed research group that comprises Thorsten Altenkirch, Graham Hutton, Henrik Nilsson, four research fellows, and eleven PhD students. Applications from the Haskell community are encouraged! The closing date for applications is Friday 15th August 2008.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org. Headlines are available as PDF.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at seas dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .