[Haskell] Haskell Weekly News: Issue 76 - July 9, 2008
byorgey at seas.upenn.edu
Wed Jul 9 14:41:54 EDT 2008
Haskell Weekly News
Issue 76 - July 09, 2008
Welcome to issue 76 of HWN, a newsletter covering developments in the
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.
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
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
Portland and OSCon. John Goerzen inquired whether any Haskellers in
Portland would be interested in getting together during OSCon July 23
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
parallel map/reduce. jinjing exhibited some code for doing parallel
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
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
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.
Haskell news from the blogosphere.
* Edward Kmett: A Lively Haskell Cafe. A Haskell Cafe room on
* Sterling Clover: Comonads in everyday life. A neat post on
using a zipper comonad to render a website menu hierarchy without
lots of duplicated effort.
* Chung-chieh Shan: Differentiating regions.
* Real-World Haskell: Real World Haskell, The Book, Available for
* Benedikt Huber: An analysis-friendly representation. An update
on Benedikt's Google Summer of Code project, Language.C.
* Chris Okasaki: Breadth-First Numbering: An Algorithm in
Pictures. Algorithms without words!
* >>> Jeremy Frens: PE Problem #2 in All Languages (Part I).
Jeremy explores solutions to Project Euler problem #2 in a variety
* Roman Cheplyaka: Double buffering & demo. A demo of Roman's
Google Summer of Code physics simulator!
* Roman Cheplyaka: QuickCheck puzzle: the answer. Why Roman's
QuickCheck test involving nonzero vectors didn't terminate. Sneaky.
* Roman Cheplyaka: Status report: week 6. A status report on
Roman's Google Summer of Code project.
* >>> JP Moresmau: Handling errors in JSON to Haskell
deserialization. JP adds error handling with an Either monad to his
JSON deserialization code.
* Braden Shepherdson: Fixed Point Datatypes. Braden explains the
concept of recursive data types as fixed points of functors.
* Luis Araujo: GHC 6.8.2 stable! (Himerge 0.21.9 too!).
* Matthew Sackman: Anglo Haskell 2008.
* Neil Mitchell: GSoC Hoogle: Week 6.
* >>> James Hague: Functional Programming Went Mainstream Years
* Max Bolingbroke: Compiler Plugins For GHC: Weeks Three and
Four. An update on Max's Google Summer of Code project.
* >>> David Overton: A Haskell Sudoku Solver using Finite Domain
Constraints. David shows how to use his Haskell constraint solver
to solve Sudoku puzzles. Pretty neat!
* >>> Lorenz Pretterhofer: Haskell Does Concurrency.
* Edward Kmett: Anamorphism. The newest installment in Edward's
field guide to recursion schemes.
* John Goerzen (Real World Haskell): Last Call for Comments on
Most Chapters. Real World Haskell is going to press soon! Get your
final comments in ASAP!
* Edward Kmett: MSFP 2008.
* Lennart Augustsson: Lost and Found. A very slick Haskell
library for tracing how expressions are actually evaluated,
including the ability to explicitly see the sharing involved!
* Tom Nielsen (FP Lunch): braincurry. A domain specific language
to define and execute experiments and simulations related to
* Alex McLean: Visualisation of a triangular mesh.
* Paul R Brown: Beust Sequence Ruminations. Thoughts on solving
an interesting puzzle in Haskell.
* >>> David Overton: Constraint Programming in Haskell. David is
working on a constraint logic programming system in Haskell.
* >>> chaource: Why functional programming is almost dead (and
has always been). Interesting argument? Flawed premises? Both? None
of the above? You decide!
Quotes of the Week
* jfredett: I'd code but I'm so drugged up I could only write
effective code in perl.
* SamB: [SamB] @let forkbomb n = forkbomb (2*n) `par` forkbomb
(2*n+1) [lambdabot] Defined. [SamB] > forkbomb 1 -!- lambdabot
[n=lambdabo at 188.8.131.52] has quit [Remote closed the connection]
* vinicius: haskell is macgyver with bananas, barbed wired and
* dons: huh, amazon recommends Neal Stephenson + RWH
* Pseudonym: trapped in the IO monad: The lesser known R. Kelly opera
* byorgey: Extreme Anger Programming: you are paired with a really
dumb partner and after twenty minutes of agony you rip the keyboard
from their hands, delete everything they typed, and do it yourself
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
More information about the Haskell