Welcome to issue 56 of HWN, a weekly newsletter covering developments in the Haskell community.
More libraries and applications for the new year, and the Haskell Hackathon gets underway!
Happy: LALR(1) parser generator. Simon Marlow announced version 1.16 of Happy, the parser generator system for Haskell. Changes from version 1.15 to 1.16 include switching to Cabal, a new %error directive, new production forms, and attribute grammar support. Happy version 1.16 is required for building GHC version 6.6 and later.
Alex: lexical analyser generator. Simon Marlow announced version 2.1.0 of Alex. Changes in Alex 2.1.0 vs. 2.0.1 include switching to Cabal, and slight changes to the error semantics.
rdtsc: reading IA-32 time register. Martin Grabmueller announced version 1.0 of package rdtsc has just been released. This small package contains one module called 'Rdtsc.Rdtsc', providing the function 'rdtsc' for accessing the 'rdtsc' machine register on modern IA-32 processors. This is a 64-bit counter which counts the number of processor cycles since the machine has been powered up. Using this instruction, you can make very precise time measurements which are independent of the actual CPU frequency.
monadLib 3.0. Iavor Diatchki announced a new version of monadLib, a collection of standard monad implementations. Some of the changes compared to the previous version: the whole library is in a single module MonadLib.hs (~500 lines); simpler and more symmetric API; removed the (generic) monadic combinators; removed the search transformer; rewrote some transformers in the 'traditional' way (exceptions and output); there is an optional module that defines base monads corresponding to each transformer.
Shellac 0.6. Robert Dockins announced a simultaneously release of the following related packages: Shellac 0.6 Shellac-readline 0.3 and Shellac-vty 0.1. Shellac is a framework for building read-eval-print style shells which uses configurable backend plugins. The major new feature of this release is the new Shellac-vty backend package, which uses the new Vty library terminal I/O directly. It currently has basic line editing keybindings, paging, and a command history. The main package and Shellac-readline updates consist of minor API updates.
IntelliJIDEA for Haskell. Tony Morris announced syntax highlighting support for Haskell in IntellijIDEA, released under a BSD licence.
Yampa + GADT for GHC 6.6. Joel Reymont announced a cabalized version of Yampa + GADT for GHC 6.6. Joel also sought comments on cabalisation, testing and example for this package.
HNOP. Ashley Yakeley updated the status of HNOP, the Haskell library for doing nothing. It has recently been split into two Cabal packages: 'nop', a library of no-op services, and 'hnop', a program that uses nop to do nothing. Both packages can be found in darcs. The two packages are intended to be templates for Cabal projects, so I'm interested in making them as canonical and 'best practices' for packaging libraries and executables.
instance Monad Set, using GADTs. Roberto Zunino announced a definition of the Set datatype, with the usual operations, such that it can be made a member of the Monad class.
GADTs are expressive. Jim Apple described a data type which holds only those terms of the untyped lambda calculus that are reducible to normal form, using GADTs
Hackage interface. Ross Paterson set up (temporarily) a simple first cut at an interface to the Hackage package database. On a related note, there was some discussion for home pages for Hackage projects, and collecting statistics.
The Haskell Hackathon. Hac 2007 is being held this week, January 10-12th, in Oxford, with around 20 Haskell coders from across the world gathering to hack on libraries and practical tools for Haskell. Work is planned for at least hackage, Cabal, bytestrings, binary IO, http, GHC, YHC, Hoogle, DrHaskell, WinHugs, GHCi debugger, crypto, QuickCheck 2, Haddock and more besides. Notably, some graduates from this year's Google Summer of Code projects will be attending, with plans to integrate their work into the main project branches. Happy hacking everyone!
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