[Haskell-cafe] Haskell Weekly News: Issue 115 - April 25, 2009

Brent Yorgey byorgey at seas.upenn.edu
Sat Apr 25 17:57:21 EDT 2009

Haskell Weekly News
Issue 115 - April 25, 2009

   Welcome to issue 115 of HWN, a newsletter covering developments in the
   [1]Haskell community.

   By all reports, the [2]5th Haskell Hackathon was a resounding success,
   with over 50 hackers present and many interesting Haskell projects
   worked on!


   darcs hacking sprint 2 and hac5 report. Eric Kow [3]sent out a link to
   a [4]report on the second darcs hacking sprint, held as part of the
   Haskell Hackathon.

   HPong-0.1.2: A simple OpenGL Pong game based on GLFW. R.A. Niemeijer
   [5]announced the release of [6]HPong, a simple Pong game implemented
   using OpenGL and GLFW.

   Hac5 roundup. Martijn van Steenbergen [7]reported on the 5th Haskell
   Hackathon. See the [8]wiki page for details, pictures, and links to
   blog posts.

   HTTP-4000.0.6. Sigbjorn Finne [9]announced a new release of the
   [10]HTTP package, which adds more robust handling of ill-formed
   cookies, and fixes a bug in normalization of certain proxy-bound

   dataenc Magnus Therning [11]announced version of the
   [12]dataenc package. This version adds a bunch of new encodings,
   including xxencode, hexadecimal, quoted-printable, python escaping, and
   url encoding; and also fixed some bugs.

   list-tries-0.0 - first release. Matti Niemenmaa [13]announced the first
   public release of [14]list-tries, a library providing implementations
   of finite sets and maps for list keys using tries, both simple and of
   the Patricia kind. The data types are parametrized over the map type
   they use internally to store the child nodes: this allows extending
   them to support different kinds of key types or increasing efficiency.

   curl-1.3.5. Sigbjorn Finne [15]announced a new release of the [16]curl
   package, which provides Haskell bindings to libcurl. It works with ghc
   6.10.2, taking into account the updated story on how to register
   Haskell-based finalizers.

   Runge-Kutta library -- solve ODEs. Uwe Hollerbach [17]announced a
   [18]Runge-Kutta library for numerically solving ordinary differential

   funsat-0.6. Denis Bueno [19]announced version 0.6 of [20]funsat, a
   modern, DPLL-style SAT solver written in Haskell. Funsat solves
   formulas in conjunctive normal form and produces a total variable
   assignment for satisfiable problems. Version 0.6 adds a representation
   for logical circuits (and, or, not, onlyif, iff, if-then-else)
   supporting efficient conversion to CNF, and now uses the BSD3 license.

   control-monad-exception-0.1: Explicitly typed exceptions. Pepe Iborra
   [21]announced the [22]control-monad-exception package, which provides
   explicitly typed exceptions for Haskell. The type of a computation in
   the EM monad carries a list of the exceptions that the computation may
   throw. A exception is raised with 'throw', which in addition adds it to
   the type, and captured with 'catch', which correspondingly removes it
   from the type. Only safe computations (all exceptions handled) can
   escape from the monad.

   Haskell Implementers' Workshop 2009 (co-located with ICFP). Simon
   Marlow [23]issued a call for talks to be given at the ACM SIGPLAN
   [24]Haskell Implementers' Workshop, to be held on September 3 in
   Edinburgh, Scotland, in conjunction with [25]ICFP 2009. The proposal
   deadline in 15 June. The Haskell Implementers Workshop is a new
   workshop to be held alongside ICFP 2009 this year in Edinburgh,
   Scotland. There will be no proceedings; it is an informal gathering of
   people involved in the design and development of Haskell
   implementations, tools, libraries, and supporting infrastructure.

   persistent-map-0.0.0. Peter Robinson [26]announced the
   [27]persistent-map package, which provides a thread-safe (STM) frontend
   for finite map types together with a backend interface for persistent

   A pragmatic Haskell .NET interop layer, 0.4.0. Sigbjorn Finne
   [28]announced a new release of [29]hs-dotnet, a Haskell .NET interop
   layer. It lets you access .NET functionality from Haskell and vice
   versa. The new version includes development done since the start of the
   year. Apart from rewriting the internals completely to put it all on a
   sounder footing, this release includes proper support for .NET generic
   types (classes and interfaces), mapping them naturally on to Haskell
   parameterized types.

   Utrecht Haskell Compiler (UHC) -- first release. atze [30]announced the
   first public release of the [31]Utrecht Haskell Compiler (UHC). UHC
   supports almost all Haskell98 features plus many experimental
   extensions. The compiler runs on MacOSX, Windows (cygwin), and various
   Unix flavors. Features include multiple backends, including a bytecode
   interpreter backend and a GRIN based, full program analysing backend;
   experimental language extensions, some of which have not been
   implemented before; implementation via attribute grammars and other
   high-level tools; and ease of experimentation with language variants,
   thanks to an aspect-oriented internal organisation.

   6.10.3 plans. Ian Lynagh [32]announced plans for a 6.10.3 release of
   GHC, in order to fix the handling of ^C in ghci. 6.10.3 will also use
   haskeline instead of editline.

   A HERE Document syntax. Jason Dusek [33]proposed a lightweight syntax
   for HERE documents in Haskell.


   Functor and Haskell. Daryoush Mehrtash [34]asked about the link between
   functors in category theory and Haskell's Functor class; the resulting
   thread is a good introduction to the connections between Haskell and
   category theory for those just learning the latter.

   breaking too long lines. Christian Maeder [35]asked how to break long
   lines in Haskell source, leading to an interesting discussion of coding


   Haskell consultant wanted to develop small, Mac-based utility in
   Haskell or AppleScript. R J [36]announced an opportunity to develop a
   short program to annotate lists of words with their definitions.

Blog noise

   [37]Haskell news from the [38]blogosphere.
     * Twan van Laarhoven: [39]Where do I get my non-regular types?.
     * Sebastian Fischer: [40]Reinventing Haskell Backtracking.
     * Darcs: [41]darcs hacking sprint #2 report.
     * Well-Typed.Com: [42]Platform progress and the Hackathon.
     * Roman Cheplyaka: [43]Hac5: the rest of the story (almost).
     * Twan van Laarhoven: [44]A non-regular data type challenge.
     * Magnus Therning: [45]dataenc released.
     * Galois, Inc: [46]Portland Next Week: ICFP PC Functional Programming
     * Christophe Poucet (vincenz): [47]Flattening Data.Map.
     * Roman Cheplyaka: [48]Hac5: second day.
     * Xmonad: [49]contribs review.
     * GHC / OpenSPARC Project: [50]Loose ends and register pairing.
     * Sean Leather: [51]Latest on the incremental fold and attributes.
     * >>> Matthew Podwysocki: [52]Functional Solution for the Shortest
       Path Problem .
     * Chris Smith: [53]Code for Manipulating Graphs in Haskell.
     * Austin Seipp: [54]A little fun with Haskabelle. Proving things
       about *existing* Haskell code in Isabelle.
     * Tupil: [55]Running Happstack applications with FastCGI.
     * Martijn van Steenbergen: [56]Hac5-Saturday.
     * beelsebob: [57]Bottoms.
     * Antoine Latter: [58]Using Haskeline.
     * Darcs: [59]darcs weekly news #26.
     * Martijn van Steenbergen: [60]Hacking GHC-What I've learned.
     * >>> Brandon Simmons: [61]Initial tests of Tries: Follow Up.
     * >>> Lab 49: [62]The Algebra of Data, and the Calculus of Mutation.
     * Martijn van Steenbergen: [63]Hac5-Friday. Pictures from the
     * >>> Matthew Podwysocki: [64]Haskell and Collective Intelligence .

Quotes of the Week

     * Gracenotes: foldr chosen for its magical evil terminating powers
     * uninverted: Moving from lisp to haskell with respect to functions
       is like moving from c to perl with respect to strings.
     * Berengal: [On infinitely fast computers] The OS probably has a
       failsafe built in: If a program is running it's in an infinite loop
       and needs to be killed...
     * nikki93: After a bit more delving, I've come to see the power of
       haskell at last. You have to treat functions like crap, forget
       about the C idea that they're 'big things'. They're not.
     * Berengal: I was squashing a bug, got frustrated, and typed "fix
       error" in ghci...

About the Haskell Weekly News

   New editions are posted to [65]the Haskell mailing list as well as to
   [66]the Haskell Sequence and [67]Planet Haskell. [68]RSS is also
   available, and headlines appear on [69]haskell.org.

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


   1. http://haskell.org/
   2. http://www.haskell.org/haskellwiki/Hac5
   3. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57551
   4. http://blog.darcs.net/2009/04/darcs-hacking-sprint-2-report.html
   5. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57493
   6. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HPong
   7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57470
   8. http://www.haskell.org/haskellwiki/Hac5
   9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57336
  10. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HTTP
  11. http://article.gmane.org/gmane.comp.lang.haskell.libraries/10945
  12. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/dataenc
  13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57311
  14. http://iki.fi/matti.niemenmaa/list-tries/
  15. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57251
  16. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/curl
  17. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57160
  18. http://www.korgwal.com/software/rk-1.0.0.tar.gz
  19. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57101
  20. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/funsat
  21. http://article.gmane.org/gmane.comp.lang.haskell.general/17120
  22. http://article.gmane.org/gmane.comp.lang.haskell.general/17120
  23. http://article.gmane.org/gmane.comp.lang.haskell.general/17113
  24. http://haskell.org/haskellwiki/HaskellImplementorsWorkshop
  25. http://www.cs.nott.ac.uk/~gmh/icfp09.html
  26. http://article.gmane.org/gmane.comp.lang.haskell.general/17106
  27. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/persistent-map
  28. http://article.gmane.org/gmane.comp.lang.haskell.general/17105
  29. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hs%2Ddotnet
  30. http://article.gmane.org/gmane.comp.lang.haskell.general/17103
  31. http://www.cs.uu.nl/wiki/UHC
  32. http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/16792
  33. http://article.gmane.org/gmane.comp.lang.haskell.prime/2787
  34. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/57324
  35. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/57207
  36. http://article.gmane.org/gmane.comp.lang.haskell.cafe/57568
  37. http://planet.haskell.org/
  38. http://haskell.org/haskellwiki/Blog_articles
  39. http://twan.home.fmf.nl/blog/haskell/non-regular2.details
  40. http://www-ps.informatik.uni-kiel.de/~sebf/pub/atps09.html
  41. http://blog.darcs.net/2009/04/darcs-hacking-sprint-2-report.html
  42. http://blog.well-typed.com/2009/04/platform-progress-and-the-hackathon/
  43. http://ro-che.blogspot.com/2009/04/hac5-rest-of-story-almost.html
  44. http://twan.home.fmf.nl/blog/haskell/non-regular1.details
  45. http://therning.org/magnus/archives/568
  46. http://www.galois.com/blog/2009/04/23/portland-next-week-icfp-pc-functional-programming-workshop/
  47. http://cpoucet.wordpress.com/2009/04/18/flattening-datamap/
  48. http://ro-che.blogspot.com/2009/04/hac5-second-day.html
  49. http://xmonad.wordpress.com/2009/04/22/contribs-review/
  50. http://ghcsparc.blogspot.com/2009/04/loose-ends-and-register-pairing.html
  51. http://feedproxy.google.com/~r/splonderzoek/~3/KWqNCgsK1ww/latest-on-incremental-fold-and.html
  52. http://codebetter.com/blogs/matthew.podwysocki/archive/2009/04/21/functional-solution-for-the-shortest-path-problem.aspx
  53. http://cdsmith.wordpress.com/2009/04/20/code-for-manipulating-graphs-in-haskell/
  54. http://www.jedi-ninja.net/2009/04/20/A-little-fun.html
  55. http://blog.tupil.com/running-happstack-applications-with-fastcgi/
  56. http://martijn.van.steenbergen.nl/journal/2009/04/19/hac5-saturday/
  57. http://noordering.wordpress.com/2009/04/19/bottoms/
  58. http://panicsonic.blogspot.com/2009/04/using-haskeline.html
  59. http://blog.darcs.net/2009/04/darcs-weekly-news-26.html
  60. http://martijn.van.steenbergen.nl/journal/2009/04/18/hacking-ghc-what-ive-learned/
  61. http://coder.bsimmons.name/blog/2009/04/initial-tests-of-tries-follow-up/
  62. http://blog.lab49.com/archives/3011
  63. http://martijn.van.steenbergen.nl/journal/2009/04/17/hac5-friday/
  64. http://codebetter.com/blogs/matthew.podwysocki/archive/2009/04/17/haskell-and-collective-intelligence.aspx
  65. http://www.haskell.org/mailman/listinfo/haskell
  66. http://sequence.complete.org/
  67. http://planet.haskell.org/
  68. http://sequence.complete.org/node/feed
  69. http://haskell.org/
  70. http://haskell.org/haskellwiki/HWN
  71. http://code.haskell.org/~byorgey/code/hwn/

More information about the Haskell-Cafe mailing list