[Haskell] Haskell Weekly News: November 22, 2006
Donald Bruce Stewart
dons at cse.unsw.edu.au
Wed Nov 22 07:45:18 EST 2006
Haskell Weekly News
Issue 50 - November 22, 2006
Welcome to issue 50 of HWN, a weekly newsletter covering developments
in the Haskell community.
This week a new release of the Haskell XML Toolbox, and details for
the inaugural Haskell Hackathon are announced. And the HWN half
century of issues is on the board!
* Haskell XML Toolbox 7.0. Uwe Schmidt released a new version of
the Haskell XML Toolbox. New in 7.0 is a module for XSLT
transformation. The XSLT module implements most of the XSLT
standard. The development of the XSLT module is done by Tim
Walkenhost in his master thesis, describing the design of the
transformer (and the limitations) is included in the distribution.
HXT 7.0 works with ghc-6.4 and ghc-6.6. A tutorial is available
in the Haskell wiki.
* Hac: Haskell Hackathon 2007. The Hac organisers announced that
the inaugural Haskell Hackathon, Hac 2007, will be held at
Oxford University Computing Laboratory, January 10-12, 2007. The
plan is to hack on Haskell infrastructure, tools, libraries and
compilers. To attend please register, and get ready to hack those
* System.FilePath 0.11. Neil Mitchell announced the release of
System.FilePath 0.11, a library for manipulating FilePath's
correctly on both Posix and Windows.
* Darcs release candidate. Tommy Pettersson announced it's time
for a new darcs release candidate, 1.0.9rc2. There will probably
be yet another release candidate (rc3) before final 1.0.9. Get
* Safe library 0.1. Neil Mitchell announced the release of
Safe library, 0.1. People often have a problem with pattern
match errors, and the only helpful message they get is: 'pattern
match error'. The Safe library hopes to eliminate some of the
frustration this causes by providing versions of these partial
functions with more helpful error messages.
* LocH, located errors 0.1. Don Stewart announced the release of
LocH, a small Haskell module providing source location-specific
error messages and debugging strings for Haskell code. It uses the
compiler-expanded 'assert' token, rather than cpp or m4, to
provide a lightweight approach to generating source locations. No
preprocessor is required. More information is available at the
LocH site, including API documentation.
* Starting your own Haskell project. Jason Dagit and Don Stewart
expanded on the document describing how best to set up a
new Haskell project, leading to the creation of mkcabal,a new
tool for setting up cabalised Haskell projects.
This section covers the Haskell' standardisation process.
* Pattern guards and where clauses
This week's proposals and extensions to the standard libraries.
* Add parsing (and some other changes) to the time package
* New Arrows tutorial. Tim Newsham wrote a small arrows
tutorial, and is looking for feedback.
asked about the direction the Yhc Core backends should take.
* The Burrows Wheeler Transformation. Jon Fairbairn proposed a
game to find the most elegant implementation of the Burrows
Wheeler transformation and its inverse.
* More fusion. Claus Reinke described a method for avoiding the
O(n) overhead of cons in strict ByteStrings. Some alternative
strategies were also suggested.
* Extending TypeEq: topEq for types. Nicolas Frisby described a
solution to an interesting type problem using TypeEq, Oleg
followed up with an alternate solution
* Debugging by the rules. Don Stewart described an idea to use
rewrite rules to change mysterious failing functions to more
useful variants. More details on using rewrite rules for various
ticks have been collected on the wiki.
* Generalising zip. Jason Dagit wondered about a generalisation
of zip to encode functions like isPrefixOf
* Heterogeneous collections. Valentin Gjorgjioski asked about
techniques for heterogeneous data in Haskell. Several solutions
were suggested, and a new wiki page collects the details.
Haskell news from the blogosphere.
* The Maybe type in Java
* Erlang User Conference
* The Missing LINQ
* APLAS 06
* The New Lambda Expressions Feature in C# 3.0
* Edit Graphs
* A search engine (core) written in Haskell
* Vim indentation mode for Haskell
* Haskell Transactional Cache
* Haskell support added to Google Code Search
* The type system of ECMA Eiffel (modelled in Haskell)
* Diff in Haskell
* Computers were invented to keep track of boring things
* Lazy lists as iterators
* Library use in the Common Lisp community
* Local and global side effects with monad transformers
* Eratosthenes sieve
* Lazy streams for Lua
* Language design
* Overlap function in Haskell for rectangles
Quotes of the Week
* Larry Wall: People who succeed in brushing up on Haskell do so by
brushing up lazily.
* xerox: [dons] then again, bots themselves are simple. [xerox]
'...they are just a morphism in the category of IRC channels
together with an endomapping ...'
* Dave Love: Presumably people with the taste to program in Haskell
will use Emacs anyway.
* Baughn: I know I always have trouble explaining what the weather
is like without involving foldr somehow.
* Korollary: Darcs is free of chemical toxins of big pharma. It's
made using all natural herbs and other woo. It's good for you.
* Pseudonym: A 'newbie', in Haskell, is someone who hasn't yet
implemented a compiler. They've only written a monad tutorial.
* astrolabe: I guess missile launching would have to be in IO
* dons: Java's type system is unsuitable for young children, the
elderly or infirm of constitution
* earthy: The Haskell standard Prelude is ... a treasure trove. But
it does require breaking your mind and reassembling the pieces to
unlock the trove.
* emu: Hijack the stack and take this compiler to Fun-land!
* norpan: The comonad of the No monad is the Yes monad?
* robreim: I'm in your base hacking all your lambdas
* shapr: I was chatting with someone who writes Haskell and at some
point they said they're not an academic, and I said that too. And
then there was what I perceived to be a small disbelieving
* simonpj: Maybe if I had an Oleg implant I could express all this
in the type system
* skew: [On the subject of strictness] There is a sequet
* ski: Please talk to your son or daughter about parametric
* wadler: The way we can tell it's C# instead of Haskell is because
it's nine lines instead of two.
* Wed Nov 8 09:14:52 PST 2006. Alexey Rodriguez. Addition of
PAPI to the RTS. PAPI is a library that supports use of the
performance counters built into most CPUs for measuring things
like cache misses and branch mispredictions. Alexey Rodriguez has
added support for PAPI to the RTS, so we can take measurements of
any of the CPU performance counters during the run of a Haskell
program, and we even separate out results for the GC from results
for the mutator.
About the Haskell Weekly News
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.
The Haskell Weekly News is also available in Spanish translation.
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
More information about the Haskell