Welcome to issue 64 of HWN, a weekly newsletter covering developments in the Haskell community.
This issue marks the second anniversary of the Haskell (not quite) Weekly News. Thanks to the Haskell community for support, content and for reading over the last two years!
OSCON Haskell Tutorial. Simon Peyton-Jones Appeared at the O'Reilly Open Source Convention (OSCON) in Portland, delivering a range of talks, including A Taste of Haskell, A Keynote on Functional Languages, Nested Data Parallelism and Transactional Memory for Concurrent Programming. Videos are available for most of these talks: A Taste of Haskell: Part 1, A Taste of Haskell: Part 2, slides for A Taste of Haskell, Transactional Memory for Concurrent Programming and the NDP talk at the London Hugs meeting.
hpodder 1.0. John Goerzen announced version 1.0.0 of hpodder, the command-line podcatcher (podcast downloader) that just happens to be written in everyone's favorite language. You can get it here. Version 1.0.0 sports a new mechanism for detecting and disabling feeds or episodes that repeatedly result in errors, updates to the Sqlite database schema, and several bugfixes.
encoding-0.1. Henning Günther announced the release of 'encoding', a Haskell library to cope with many character encodings found on modern computers. At the moment it supports (much more is planned): ASCII, UTF-8, -16, -32, ISO 8859-* (alias latin-*), CP125* (windows codepages), KOI8-R, Bootstring (base for punycode)
Dimensional 0.6: Statically checked physical dimensions. Björn Buckwalter announced a library providing data types for performing arithmetic with physical quantities and units. Information about the physical dimensions of the quantities/units is embedded in their types and the validity of operations is verified by the type checker at compile time. The boxing and unboxing of numerical values as quantities is done by multiplication and division with units.
hgal-1.0.1. Jean Philippe Bernardy. Computation automorphism group and canonical labeling of a graph
hpodder-1.0.3. John Goerzen. Podcast Aggregator (downloader)
dlist-0.3.1. Don Stewart. Differences lists: a list-like type supporting O(1) append
pointfree-1.0. Felix Martini. Stand-alone command-line version of the point-less plugin for lambdabot
encoding-0.1. Henning Guenther. A library for various character encodings
AppleScript-0.1.3. Wouter Swierstra. Call AppleScript from Haskell
SDL-ttf-0.4.0. David Himmelstrup. Binding to libSDL_ttf
Finance-Quote-Yahoo-0.2. Brad Clawsie. Obtain quote data from finance.yahoo.com
xmobar-0.7. Andrea Rossato. A Minimalistic Text Based Status Bar
Fri Jul 27 03:41:57 PDT 2007. Simon Marlow. Pointer Tagging. This patch implements pointer tagging as per our ICFP'07 paper 'Faster laziness using dynamic pointer tagging'. It improves performance by 10-15% for most workloads, including GHC itself. The original patches were by Alexey Rodriguez Yakushev, with additions and improvements by me. I've re-recorded the development as a single patch. The basic idea is this: we use the low 2 bits of a pointer to a heap object (3 bits on a 64-bit architecture) to encode some information about the object pointed to. For a constructor, we encode the 'tag' of the constructor (e.g. True vs. False), for a function closure its arity. This enables some decisions to be made without dereferencing the pointer, which speeds up some common operations. In particular it enables us to avoid costly indirect jumps in many cases. More information in the commentary.
Each week, 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 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