Welcome to issue 63 of HWN, a weekly newsletter covering developments in the Haskell community.
This week, the HWN rises zombie-like from its repository, as your friendly HWN editor tries to get his PhD finished. This bumper issue is filled out with 100 new Haskell blog articles and dozens of new libraries!
Learn Haskell in 10 minutes. Chris Smith prepared a new tutorial on the basics of Haskell
Haskell Program Coverage 0.4. Andy Gill announced release 0.4 of Hpc, a tool for Haskell developers. Hpc is a tool-kit to record and display Haskell Program Coverage. Hpc includes tools that instrument Haskell programs to record program coverage, run instrumented programs, and display the coverage information obtained.
Uniplate 1.0. Neil Mitchell announced Uniplate (formerly known as Play), a library for boilerplate removal requiring only Haskell 98 (for normal use) and optionally multi-parameter type classes (for more advanced features).
Atom: Hardware description in Haskell. Tom Hawkins announced Atom, a high-level hardware description language embedded in Haskell that compiles conditional term rewriting systems into conventional HDL.
Catch. Neil Mitchell announced a pattern-match checker for Haskell, named Catch. Do you sometimes encounter the dreaded 'pattern match failure: head' message? Do you have incomplete patterns which sometimes fail? Do you have incomplete patterns which you know don't fail, but still get compiler warnings about them? Would you like to statically ensure the absence of all calls to error? This is what Catch helps ... catch!
Haskell Communities and Activities Report. Andres Loeh announced that the Haskell Communities and Activities Report is now available, covering the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell.
The Reduceron. Matthew Naylor announced the Reduceron, a processor for executing Haskell programs on FPGA with the aim of exploring how custom architectural features can improve the speed in which Haskell functions are evaluated. Being described entirely in Haskell (using Lava), the Reduceron also serves as an interesting application of functional languages to the design of complex control circuits such as processors.
Data.Derive. Neil Mitchell announced Data.Derive, a library and a tool for deriving instances for Haskell programs. It is designed to work with custom derivations, SYB and Template Haskell mechanisms. The tool requires GHC, but the generated code is portable to all compilers. We see this tool as a competitor to DrIFT.
Piffle, a packet filter language. Jaap Weel announced Piffle, a compiler for a packet filter language in Haskell: a good example of how Haskell can be used in an application domain (low level computer networking) where people tend to use C for everything, including writing compilers.
Towards a Programming Language Nirvana. Simon Peyton-Jones appears on video, talking about the Haskell path to programming language Nirvana
Yi 0.2. Jean-Philippe Bernardy announced the 0.2.0 release of the Yi editor. Yi is a text editor written and extensible in Haskell. The goal of Yi is to provide a flexible, powerful and correct editor core dynamically scriptable in Haskell. Yi si also a Haskell interpreter, very much like emacs is a Lisp interpreter, this makes really easy to dynamically hack, experiment and modify Yi. All tools and goodies written in haskell are also readily available from the editor. This is implemented by binding to the GHC API.
Foreign.AppleScript. Wouter Swierstra announced a library for compiling and executing AppleScript from Haskell. AppleScript is a scripting language available on all modern Apple computers. It can be used to script most applications on running on MacOS X.
Asterisk Gateway Interface. Jeremy Shaw uploaded a simple AGI interface to hackage. For more about Asterix, see here.
Harpy. Dirk Kleeblatt announced Harpy, a library for run-time code generation of x86 machine code. It provides not only a low level interface to code generation operations, but also a convenient domain specific language for machine code fragments, a collection of code generation combinators and a disassembler. Lennart Augustsson has written a series of articles demonstrating its use for fast EDSLs.
Yaml Reference. Gaal Yahas announced a Haskell (Cabal) package containing the YAML spec productions wrapped in Haskell magic to convert them to an executable parser. The parser is streaming. It isn't intended to serve as a basis for a YAML tool chain; instead it is meant to serve as a reference implementation of the spec.
HsOpenSSL-0.1. Masatake Daimon HsOpenSSL 0.1, OpenSSL binding for Haskell
Emping-0.3. Hans Van Thiel Emping derives heuristic rules from nominal data
parsely-0.1. Samuel Bronson parsely, Typeclasses for parsing monads, and some instances
sessions-2007.7.15. Matthew Sackman sessions, Session Types for Haskell
CC-delcont-0.1. Dan Doel CC-delcont1, An implementation of multi-prompt delimited continuations
gd-3000.3.0. Bjorn Bringert gd, A binding to the GD graphics library
StrategyLib-188.8.131.52. Samuel Bronson StrategyLib, Strafunski's StrategyLib
ports-0.4.3.2. Don Stewart ports, concurrent and distributed Haskell programming in the IO monad without relying on mutable variables.
Finance-Quote-Yahoo-0.1. Brad Clawsie Yahoo-0.1, Obtain quote data from finance.yahoo.com
logict-0.2. Dan Doel LogicT, A continuation-based, backtracking, logic programming monad.
utf8-string-0.1. Eric Mertens utf8-string, Support for reading and writing UTF8 Strings
type-int-0.4. Edward Kmett type-int, Type level 2s- and 16s- complement Integers (positive and negative), Booleans, Ord and Eq
cgi-3001.1.5. BjornBringert cgi-3001, a Haskell library for writing CGI programs
xmobar-0.6. AndreaRossato xmobar, Xmobar is a minimal status bar for the XMonad Window Manager
monad-param-0.0.2. EdwardKmett monad-param, parameterized monads
dfsbuild-1.0.1. JohnGoerzen dfsbuild, dfsbuild is the program used to create the Debian From Scratch CD image.
AngloHaskell. is coming up in Cambridge, August 10-11
Haskell Hackathon 07 II. Hac07 coming up in Freiburg, Oct 5-7
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