Haskell Weekly News: November 11, 2007
Welcome to issue 67 of HWN, a newsletter covering developments in the Haskell community.
This week sees the release of GHC 6.8.1, to rave reviews. There have been many reports of large performance improvements for Haskell programs, from small to large production systems. Congratulations to the GHC team for such a great release!
GHC 6.8.1. Ian Lynagh announced the release of GHC 6.8.1, a new major release of GHC. There have been a number of significant changes since the last major release, including: Haskell Program Coverage support, the GHCi debugger, pointer tagging in the runtime (with up to 10-15% speedups), constructor specialisation, improved optimisations and much more! The full release notes are available.
Lazy SmallCheck 0.1. Matthew Naylor announced Lazy SmallCheck 0.1, a library for exhaustive, demand-driven testing of Haskell programs.
HDBC 1.1.3. John Goerzen announced new releases of HDBC, the Haskell database connectivity kit, and its associated backends (for sqlite3, postgresql, odbc).
xmobar. Andrea Rossato announced the release of Xmobar-0.8, a minimalistic, text based, status bar. It was specifically designed to work with the XMonad Window Manager.
Flymake Haskell. Daisuke Ikegami announced flymake haskell, emacs bindings for interactive Haskell editing.
network bytestring. Johan Tibbel announced, strict ByteString versions of the recv/send family of functions for efficient network IO.
ByteString search. Bryan O'Sullivan announced a cabalised version of the fast Boyer-Moore and Knuth-Morris-Pratt string search code for ByteStrings
Generating free theorems. Janis Voigtlaender announced an improved version of the online and offline free theorems generator for Haskell
hslogger4j 0.1.1. Bjorn Buckwalter announced Hslogger4j, which provides handlers for hslogger (John Goerzen's Haskell logging framework) that are compatible with log4j's XMLLayout.
Infinity 0.3. Austin Seipp announced `infinity', an IRC bot in Haskell
hswm. Remi Turk announced the first and last release of hswm, a Haskell window manager.
HackageThis week's new libraries in the Hackage library database.
xmobar-0.8. Uploaded by Andrea Rossato. xmobar, a minimalistic text based status bar
hsSqlite3-0.0.4. Uploaded by Evgeny Jukov. hsSqlite3, bindings for Sqlite3
cabal-rpm-0.3.2. Uploaded by Bryan OSullivan. cabal-rpm turns Haskell Cabal source packages into source and binary RPM packages.
selenium-0.2.2. Uploaded by Aaron Tomb. selenium, Haskell bindings to communicate with a Selenium Remote Control server. This package makes it possible to use Haskell to write test scripts that exercise web applications through a web browser.
HPDF-1.3. Uploaded by alpheccar. HPDF. A PDF library with support for several pages, page transitions, outlines, annotations, compression, colors, shapes, patterns, jpegs, fonts, typesetting ...
FileManip-0.3.1. Uploaded by Bryan OSullivan. FileManip, a Haskell library for working with files and directories. Includes code for pattern matching, finding files, modifying file contents, and more.
stringsearch-0.2. Uploaded by Bryan OSullivan. stringsearch, fast search of ByteStrings.
nano-md5-0.1. Uploaded by Don Stewart. nano-md5, ByteString bindings to OpenSSL.
denominate-0.4.1. Uploaded by Calvin Smith. denominate provides a main program for performing bulk file and directory renaming, using a built-in filename converter or user-defined converters.
ContArrow 0.0.2. Uploaded by Evgeny Jukov. ContArrow, Control.Arrow.Transformer.Cont
state 0.0.2. Uploaded by Evgeny Jukov. state. State.
infinity 0.3. Uploaded by Austin Seipp. infinity, a tiny, pluggable irc bot.
unix-compat 0.1.2.1. Uploaded by Duncan Coutts. unix-compat, portable implementations of parts of the unix package.
Ranged-sets 0.1.1. Uploaded by Paul Johnson. Ranged-sets. A ranged set is an ordered list of ranges.
IFS 0.1.1. Uploaded by alpheccar. IFS, a library to describe IFS and generate PPM pictures from the descriptions
bktrees 0.1.3. Uploaded by Josef Svenningsson. bktrees. Burhard-Keller trees provide an implementation of sets which apart from the ordinary operations also has an approximate member search, allowing you to search for elements that are of a certain distance from the element you are searching for.
pqc 0.2. Uploaded by Don Stewart. pqc, a parallel batch driver for QuickCheck
strict 0.2. Uploaded by Don Stewart. strict, strict data types.
HsSVN 0.2. Uploaded by PHO. HsSVN, (Part of) Subversion binding for Haskell
HsHyperEstraier 0.2. Uploaded by PHO. HsHyperEstraier, a HyperEstraier binding for Haskell. HyperEstraier is an embeddable full text search engine which is supposed to be independent to any particular natural languages.
HsOpenSSL 0.3.1. Uploaded by PHO. HsOpenSSL, a (part of) OpenSSL binding for Haskell. It can generate RSA and DSA keys, read and write PEM files, generate message digests, sign and verify messages, encrypt and decrypt messages.
Finance-Quote-Yahoo 0.4. Uploaded by Brad Clawsie. Finance-Quote-Yahoo, obtain quote data from finance.yahoo.com
LRU 0.1.1. Uploaded by Adam Langley. LRU, an LRU data structure
base 3.0. Uploaded by Ross Paterson. base, the Prelude and its support libraries, and a large collection of useful libraries ranging from data structures to parsing combinators and debugging utilities.
regex-posix 0.72.0.2. Uploaded by Duncan Coutts. regex-posix, posix regex support.
xhtml 3000.0.2.1. Uploaded by Bjorn Bringert. xhtml, combinators for producing XHTML 1.0, including the Strict, Transitional and Frameset variants.
Win32 18.104.22.168. Uploaded by Esa Ilari Vuokko. Win32, a binding to part of the Win32 library
unix 22.214.171.124. Uploaded by Ross Paterson. unix, POSIX functionality
time 126.96.36.199. Uploaded by Ross Paterson. time, time handling.
template-haskell 188.8.131.52. Uploaded by Ross Paterson. template-haskell, support for manipulating Haskell syntax trees
stm 184.108.40.206. Uploaded by Ross Paterson. stm, software transational memory
regex-compat 0.71.0.1. Uploaded by Ross Paterson. regex-compat, backwards compatible regex support
regex-base 0.72.0.1. Uploaded by Ross Paterson. regex-base, regex support.
readline 220.127.116.11. Uploaded by Ross Paterson. readline, an interface to the GNU readline library
random 18.104.22.168. Uploaded by Ross Paterson. random, random number generation
QuickCheck 22.214.171.124. Uploaded by Ross Paterson. QuickCheck, automatic testing of Haskell programs
process 126.96.36.199. Uploaded by Ross Paterson. process, jobs and processes
pretty 188.8.131.52. Uploaded by Ross Paterson. pretty, pretty printing library.
parsec 184.108.40.206. Uploaded by Ross Paterson. parsec, monadic parser combinators.
parallel 220.127.116.11. Uploaded by Ross Paterson. parallel, support for parallel programming
packedstring 0.1.0.0. Uploaded by Ross Paterson. packedstring, packed strings
OpenGL 18.104.22.168. Uploaded by Ross Paterson. OpenGL, binding for the OpenGL graphics system
OpenAL 22.214.171.124. Uploaded by Ross Paterson. OpenAL, binding to the OpenAL cross-platform 3D audio API.
old-time 126.96.36.199. Uploaded by Ross Paterson. old-time, time library.
alex 2.2. Uploaded by Simon Marlow. alex is a tool for generating lexical analysers in Haskell
Cabal 188.8.131.52. Uploaded by Duncan Coutts. Cabal is the framework for packaging Haskell software
HaXml 1.19.1. Uploaded by Malcolm Wallace. HaXml, Utilities for manipulating XML documents
HDBC-odbc 184.108.40.206. Uploaded by John Goerzen. HDBC-odbc, ODBC driver for HDBC
HDBC-postgresql 220.127.116.11. Uploaded by John Goerzen. HDBC-postgresql is a PostgreSQL driver for HDBC
HDBC-sqlite3 18.104.22.168. Uploaded by John Goerzen. HDBC-sqlite3 is a Sqlite v3 driver for HDBC
HDBC 1.1.3. Uploaded by John Goerzen. HDBC is a Haskell Database library
X11 1.3.0. Uploaded by Don Stewart. X11 is a library of bindings to the X11 libraries and server
HsOpenSSL 0.3. Uploaded by Masatake Daimon. HsOpenSSL, (Part of) OpenSSL binding for Haskell
Imlib 0.1. Uploaded by Cale Gibbard. Imlib, Haskell binding for Imlib 2
Stream 0.2.2. Uploaded by Wouter Swierstra. Stream, a library for manipulating infinite lists.
sat 1.0. Uploaded by AndriiZvorygin. sat, CNF SATisfier
torrent 2007.10.27. Uploaded by David Himmelstrup. torrent, BitTorrent file parser
bencode 0.2. Uploaded by David Himmelstrup. bencode, Parser and printer for bencoded data.
SDL 0.5.1. Uploaded by David Himmelstrup. SDL, binding to libSDL
NGrams 1.0. Uploaded by Justin Bailey. ngrams, Simple application for calculating n-grams using Google
Bootstrapping Haskell. Andrew Copping wondered how the first Haskell compilers were bootstrapped, leading to some interesting historical details.
GHC 6.8 performance. Dan Piponi asked about Haskell performance for low level array manipulation, with some excellent speedups produced by GHC 6.8
Software Development Engineer at MSR. Don Syme announced that the F Sharp team is hiring! We have two positions open right now. The first is a software development engineer specializing in Visual Studio and libraries. The second Post Calendar is a software development engineer
PhD position at Chalmers. John Hughes announced that the Functional Programming group at Chalmers is seeking to recruit a PhD student to work on domain-specific languages embedded in Haskell for hardware design, and for programming graphics processors. PhD positions in Sweden are 'real jobs', paying a respectable salary for up to five years.
Blog noiseHaskell news from the blogosphere.
- Scala for bioinformatics
- I like Haskell a lot
- Haskell history
- Continuation Passing Style for Monads
- Abuse: Is it ruby? Is it Haskell? It's both!
- Learning Haskell?
- For loops in Haskell
- A Simple Programming Puzzle Seen Through Three Differenent Lenses
- Scala Makes Me Think
- Haskell Substring Function
- Multicore Programming and Automatic Parallelisation
- Spinoza SOS in Haskell
- Why not just use Haskell?
- Chain delegates (in Haskell)
- Parser Combinators in C
- Will hybrid languages like D render functional languages like Haskell, OCaml and Common Lisp irrelevant?
- Category Theory for the Java Programmer
- Benchmarking ray tracing, Haskell vs. OCaml
- Some lambda calculus examples
- Beautiful timetables
- References, Arrows and Categories
- Anamorphisms in Ruby
- Type metaprogramming in Haskell and C++
- A Small Combinatorial Library
Quotes of the Week
- faxathisia: Omg! I spent 2 days writing this code and it's worked the first time I run it. Only possible with Haskell :D
- anonymous: The thing is Haskell isn't suited for young people, whereas the OBJECT model of C++ is
- sethg: I feel like I still dont understand comonads
- fnord123: Haskell mainly helps with my C++ template coding when I'm doing money oriented programming
- Tac-Tics: I get the feeling if all I ever use is the IO monad, someone here will shower me in holy monad fire and cleanse the evil from me.... leaving burn marks all over
- Anton van Straaten: there's a new movement towards 'functional eating' which involves using a knife and fork (think ML) or chopsticks (Haskell ;) instead of a chainsaw. Its proponents claim that this approach is far superior, but chainsaw fans are skeptical.
- SamB: what happens in the monad... stays in the monad...
- Brent Yorgey: Friends don't let friends write in COBOL.
- Bulat Ziganshin: It's a whole new era in low-level GHC programming
About the Haskell Weekly News
To help create new editions of this newsletter, please
see the contributing
information. Send stories to
dons at galois.com. The darcs
repository is available at
darcs get http://code.haskell.org/~dons/code/hwn/