Old news

From HaskellWiki
Revision as of 04:06, 23 July 2007 by DonStewart (talk | contribs) (push back old news)
Jump to navigation Jump to search

News from 2007


  • Atom: Hardware Description in Haskell. Tom Hawkins announced the release of Atom, a high-level hardware description language embedded in Haskell, compiles conditional term rewriting systems into conventional HDL.

  • The Monad.Reader: Issue 7. Wouter Swierstra announced the latest issue of The Monad.Reader. The Monad.Reader is a quarterly magazine about functional programming. It is less-formal than journal, but somehow more enduring than a wiki page or blog post.

  • HDBC: Haskell Database Connectivity. John Goerzon announced that HDBC 1.1.2 is now released. HDBC provides an abstraction layer between Haskell programs and SQL relational databases. This lets you write database code once, in Haskell, and have it work with any number of backend SQL databases.

  • FileManip: Expressive Filesystem Manipulation. Bryan O'Sullivan announced the FileManip package provides expressive functions and combinators for searching, matching, and manipulating files.

  • photoname: manipulate photos using EXIF data. Dino Morelli announced the release of photoname, a command-line utility for renaming and moving photo image files. The new folder location and naming are determined by two things: the photo shoot date information contained within the file's EXIF tags and the usually-camera-assigned serial number, often appearing in the filename.

  • RSA-Haskell: Command-line Cryptography. David Sankel announced the release of RSA-Haskell, a collection of command-line cryptography tools and a cryptography library written in Haskell. It is intended to be useful to anyone who wants to secure files or communications or who wants to incorporate cryptography in their Haskell application.

  • Haskell modes for Vim. Claus Reinke summarised the various Haskell/Vim support currently available

  • French Translation of Gentle Introduction to H98. The haskell-fr team announced a completed a translation into French of the 'Gentle Introduction to Haskell'.


  • GHC 6.6.1. Ian Lynagh announced a new patchlevel release of GHC. This release contains a significant number of bugfixes relative to 6.6, so we recommend upgrading. Release notes are here. GHC is a state-of-the-art programming suite for Haskell. Included is an optimising compiler generating good code for a variety of platforms, together with an interactive system for convenient, quick development. The distribution includes space and time profiling facilities, a large collection of libraries, and support for various language extensions, including concurrency, exceptions, and foreign language interfaces.

  • Xmonad 0.1. Spencer Janssen announced the inaugural release of Xmonad. Xmonad is a minimalist tiling window manager for X, written in Haskell. Windows are managed using automatic layout algorithms, which can be dynamically reconfigured. At any time windows are arranged so as to maximise the use of screen real estate. All features of the window manager are accessible purely from the keyboard: a mouse is entirely optional. Xmonad is configured in Haskell, and custom layout algorithms may be implemented by the user in config files.

  • DisTract: Distributed Bug Tracker implemented in Haskell. Matthew Sackman announced DisTract, a Distributed Bug Tracker. We're all now familiar with working with distributed software control systems, such as Monotone, Git, Darcs, Mercurial and others, but bug trackers still seem to be fully stuck in the centralised model: Bugzilla and Trac both have single centralised servers. This is clearly wrong, as if you're able to work on the Train, off the network and still perform local commits of code then surely you should also be able to locally close bugs too. DisTract allows you to manage bugs in a distributed manner through your web-browser. The distribution is achieved by making use of a distributed software control system, Monotone. Thus Monotone is used to move files across the network, perform merging operations and track the development of every bug. Finally, the glue in the middle that generates the HTML summaries and modifies the bugs is written in Haskell.

  • IOSpec 0.1. Wouter Swierstra announced the first release of the Test.IOSpec library, that provides a pure specification of some functions in the IO monad. This may be of interest to anyone who wants to debug, reason about, analyse, or test impure code. Essentially, by importing libraries from IOSpec you can the same code you would normally write in the IO monad. Once you're satisfied that your functions are reasonably well-behaved, you can remove the Test.IOSpec import and replace it with the 'real' functions instead.

  • wl-pprint-1.0: Wadler/Leijen pretty printer. Stefan O'Rear announced wl-pprint-1.0, the classic Wadler / Leijen pretty printing combinators, now in 100% easier to use Cabalised form! PPrint is an implementation of the pretty printing combinators described by Philip Wadler (1997). In their bare essence, the combinators of Wadler are not expressive enough to describe some commonly occurring layouts. The PPrint library adds new primitives to describe these layouts and works well in practice.

  • London Haskell User Group. Neil Bartlett announced the first meeting of the London Haskell User Group on Wednesday 23rd May from 6:30PM. The meeting will be held at City University's main campus in central London, and Simon Peyton Jones will be coming to give a talk.

  • New York Functional Programmers Network. Howard Mansell announced a New York area-based network for Haskell (and functional) programmers. The idea is to have a regular meeting through which functional programmers can meet to discuss experiences, get and give information, find jobs.

  • Data.Proposition 0.1. Neil Mitchell announced the release of Data.Proposition, a library that handles propositions, logical formulae consisting of literals without quantification. It automatically simplifies a proposition as it is constructed using simple rules provided by the programmer. Implementations of propositions in terms of an abstract syntax tree and as a Binary Decision Diagram (BDD) are provided. A standard interface is provided for all propositions.

  • Book reviews for the Journal of Functional Programming. Simon Thompson sought interested contributors for book reivews for the Journal of Functional Programming. There is a list of books currently available for review.

  • Reminder: HCAR May 2007. Andres Loeh reminded us that the deadline for the May 2007 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on your project, on the interesting stuff that you've been doing; using or affecting Haskell in some way.

  • Template 0.1: Simple string substitution. Johan Tibell announced a simple string substitution library that supports substitution ala Perl or Python.

  • hpaste for emacs. David House announced hpaste.el, an Emacs Lisp library that integrates hpaste, the Haskell pastebin, into Emacs. It provides two functions, hpaste-paste-region and hpaste-paste-buffer, which send the region or buffer to the hpaste server as required.


  • ndp-0.1: nested data parallelism in Haskell. Roman Leshchinskiy announced the first release of the NDP package, a library for writing nested data-parallel programs in Haskell, on shared-memory multiprocessors. The NDP library is part of the Data Parallel Haskell project. The paper Data Parallel Haskell: a status report describes the underlying design and go through an example program.

  • binary 0.3: bigger, better, faster. Lennart Kolmodin announced binary 0.3. The 'binary' package provides efficient serialization of Haskell values to and from lazy ByteStrings. ByteStrings constructed this way may then be written to disk, written to the network, or further processed (e.g. stored in memory directly, or compressed in memory with zlib or bzlib). It's available through Hackage, or via its homepage.

  • Text.HTML.Chunks. Matthew Sackman announced the Text.HTML.Chunks library, a clone with improvements of the Perl HTML::Chunks module. The main achievement is the use of template-haskell to combine the template into the code at compile time. This then allows for static checking that the variables/fields that the templates are expecting are indeed being provided and that the templates the code is trying to use do indeed exist. The template is then incorporated within the code, removing the dependency on the template.

  • Phooey 1.0 and GuiTV 0.3. Conal Elliott announced a new version of Phooey, a library for functional user interfaces. Highlights in this release: uses new TypeCompose package, which includes a simple implementation of data-driven computation; new Applicative functor interface; eliminated the catch-all Phooey.hs module. Now import any one of Graphics.UI.Phooey.{Monad ,Applicative,Arrow}; Phooey.Monad has two different styles of output widgets, made by owidget and owidget' and more. Phooey is also used in GuiTV, a library for composable interfaces and 'tangible values'.

  • The real Monad Transformer. Henning Thielemann announced the real monad transformer! It has been argued that people avoid Haskell because of terms from Category theory like 'Monad'. This problem can now be solved by a wrapper which presents all the internet entirely without monads! Start the parallel Haskell wiki. Of course the tool is written in Haskell, that is, Haskell helps solving problems which only exist because of Haskell. Bug reports and feature requests can be tracked at here.

  • GHC 6.6.1 Release Candidate. Ian Lynagh announced the Release Candidate phase for GHC 6.6.1. Snapshots beginning with 6.6.20070409 are release candidates for 6.6.1. You can download snapshots from here.

  • Haskell Cryptographic Library 4.0.3. Dominic Steinitz announced the release of a new version of the Haskell Cryptographic Library based on the crypto proposal. See the crypto home for more details. There is now no dependency on NewBinary. The downside is the library contains no support for ASN.1 which will be released in separate package.

  • TagSoup library 0.1. Neil Mitchell announced TagSoup, a library for extracting information out of unstructured HTML code, sometimes known as tag-soup. The HTML does not have to be well formed, or render properly within any particular framework. This library is for situations where the author of the HTML is not cooperating with the person trying to extract the information, but is also not trying to hide the information. The library provides a basic data type for a list of unstructured tags, a parser to convert HTML into this tag type, and useful functions and combinators for finding and extracting information.

  • ParseP library 0.1. Twan van Laarhoven announced a generalized/improved variant of the ReadP parser library. Unlike ReadP ParseP can handle any type of token, and actually generates error messages in case something goes wrong. It is also possible to use things other then a list as an input stream, for example ByteStrings.

  • Debian library for Haskell. Jeremy Shaw announced the availability of a library for interacting with the Debian system from Haskell. This library does not (currently) depend on dpkg or apt for any functionality. Contributions are welcome, and the library is available from Hackage. Well-Support Modules: parsing/Printing Debian control files, parsing/printing sources.list files, comparing Debian version numbers, a data type for encoding Debian relations and more.

  • Call for Contributions: HC and A Report. Andres Loeh mentioned that it is nearly time for the twelfth edition of the Haskell Communities and Activities Report. If you are working on any project that is in some way related to Haskell, write a short entry and submit it. Even if the project is very small or unfinished or you think it is not important enough -- please reconsider and submit an entry anyway!

  • System.FilePath 1.0. Neil Mitchell announced the System.FilePath 1.0 release! The FilePath library is a library for manipulating FilePaths in a cross platform way on both Windows and Unix. Documentation.

  • FGL - A Functional Graph Library. Martin Erwig announced a new release of the Functional Graph Library for Haskell. This release fixes some bugs in the implementation of several basic inspection functions.

  • TypeCompose 0.0. Conal Elliott announced TypeCompose, which provides some classes and instances for forms of type composition. It also includes a very simple implementation of data-driven computation.

  • Haskell SWF generation library. Jeremy Shaw announced the availability of an Adobe Shockwave Flash (SWF) library for Haskell. It is primarily useful for compiling ActionScript assembly into a .swf file.

  • New web-devel mailinglist for Haskell. Marc Weber announced a new web-devel mailinglist on haskell.org has been set up. You can subscribe here.

  • strict-0.1: strict versions of Haskell types. Roman Leshchinskiy announced the first release of package 'strict' which provides strict versions of standard Haskell types. At the moment, pairs, Maybe and Either are defined. The library is available from hackage.

  • Chess in Haskell. Steffen Mazanek announced a straightforward implementation of a chess engine in Haskell, available as a tutorial exercise.

  • storylen: story word count and categorization. Dino Morelli announced storylen, a command-line utility that counts the words in files and classifies them into story types (short story, novella, novel...). Its operation and output are very similar to the *nix program wc. This is useful for books in plain ascii text.


  • Google Summer of Code and Haskell.org. Malcolm Wallace announced that Haskell.org has once again applied to be a mentoring organisation for the Google Summer of Code. If you are a student who would like to earn money hacking in Haskell, or you are a non-student who has a cool idea for a coding project but no time to do it yourself, then visit the SoC wiki to gather ideas, and add yourself to the list of interested people! Add new ideas for projects!

  • Haskell Workshop Call for Papers. Gabriele Keller announced the initial call for papers for the Haskell Workshop 2007, part of the 2007 International Conference on Functional Programming (ICFP). The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell.

  • Data.CompactString 0.3: Unicode ByteString. Twan van Laarhoven announced version 0.3 of the Data.CompactString library. Data.CompactString is a wrapper around Data.ByteString supporting Unicode strings.

  • harchive-0.2: backup and restore software in Haskell. David Brown announced release 0.2 of harchive, a program for backing up and restoring data. The package is available from Hackage.

  • New release of regex packages. Chris Kuklewicz announced new versions of the regex-* packages (base,compat,dfa,parsec,pcre,posix,tdfa,tre). There is a new wiki page with documentation relating to these packages. All packages are available from Hackage, under the Text Category.

  • StaticDTD: type safe markup combinators from DTDs. Marcel Manthe announced a tool that transforms a Document Type Definition to a library. The resulting library contains combinators that assure proper nesting of elements. The plan is to add more constraints that will also take care of the order of occurrence of children. The parsing of the DTD is done with HaXml. The code is available via darcs.

  • IPv6 support for network package. Bryan O'Sullivan announced that he'd added IPv6 support to the network package.

  • Type-level binary arithmetic library. Oleg Kiselyov and Chung-chieh Shan announced a new library for arbitrary precision binary arithmetic over natural kinds. The library supports addition/subtraction, predecessor/successor, multiplication/division, exp2, full comparisons, GCD, and the maximum. At the core of the library are multi-mode ternary relations Add and Mul where any two arguments determine the third. Such relations are especially suitable for specifying static arithmetic constraints on computations. The type-level numerals have no run-time representation; correspondingly, all arithmetic operations are done at compile time and have no effect on run-time.


  • New Book - Programming in Haskell. Graham Hutton announced a new Haskell textbook: Programming in Haskell. This introduction is ideal for beginner programmers: it requires no previous programming experience and all concepts are explained from first principles via carefully chosen examples. Each chapter includes exercises that range from the straightforward to extended projects, plus suggestions for further reading on more advanced topics. The presentation is clear and simple, and benefits from having been refined and class-tested over several years.

  • Gtk2Hs version 0.9.11. Duncan Coutts announced Gtk2Hs - a GUI Library for Haskell based on Gtk+, version 0.9.11, is now available. Gtk2Hs features: automatic memory management; Unicode support; nearly full coverage of Gtk+ 2.8 API; support for several additional Gtk+/Gnome modules (Glade visual GUI builder, cairo vector graphics, SVG rendering, OpenGL extension and more).

  • cabal-make version 0.1. Conal Elliott announced Cabal-make, a GNU make include file to be used with Cabal in creating and sharing Haskell packages. A few highlights: web-based, cross-package links in Haddock docs; syntax coloring via hscolour, with per-project CSS; links from the Haddock docs to hscolour'd code and to wiki-based user comment pages. It is available here.

  • Vty 3.0.0. Stefan O'Rear announced a new major of vty, featuring improved performance. vty is notably used in yi to provide a terminal interface supporting syntax highlighting.

  • Haskell Xcode Plugin. Lyndon Tremblay announced the first release of a plugin for Xcode enabling Haskell syntax highlighting, Xcode projects compiling and linking, and a couple missing features, for Haskell (GHC).

  • urlcheck 0.1: parallel link checker. Don Stewart announced the first release of urlcheck, an parallel link checker, written in Haskell. Frustrated with the resources and time consumed by 'linkchecker', urlcheck is a lightweight, smp-capable replacement in Haskell. urlcheck pings urls found in the input file, checking they aren't 404s. It uses Haskell threads to run queries concurrently, and can transparently utilise multiple cores if you have them.

  • The Monad.Reader: call for copy. Wouter Swierstra welcomed articles for the next issue of The Monad.Reader. Submit articles for the next issue by e-mail before April 13th, 2007. Articles should be written according to the guidelines available from The Monad Reader home.

  • TV-0.2 and GuiTV-0.2. Conal Elliott announced TV, a library for composing tangible values ('TVs'), values that carry along external interfaces. In particular, TVs can be composed to create new TVs, and they can be directly executed with various kinds of interfaces. Values and interfaces are combined for direct use, and separable for composition. GuiTV adds graphical user interfaces to the TV (tangible value) framework, using Phooey. The functionality was part of TV up to version 0.1.1, and is now moved out to a new package to eliminate the dependency of core TV on Phooey and hence on wxHaskell, as the latter can be difficult to install.

  • Haskell-mode 2.2. Stefan Monnier released version 2.2 of the Haskell-mode package for Emacs. It has very few visible changes, mostly some commands to query an underlying interactive hugs/ghci in order to get type/info about specific identifiers.

  • Data.CompactString 0.1. Twan van Laarhoven announced a beta Unicode version of Data.ByteString. The library uses a variable length encoding (1 to 3 bytes) of Chars into Word8s, which are then stored in a ByteString.

  • HSXML version 1.13. Oleg Kiselyov announced version 1.13 of HSXML. HSXML is a library for writing and transforming typed semi-structured data in Haskell -- in S-expression syntax, with the extensible set of `tags', and statically enforced content model restrictions. A particular application is writing web pages in Haskell. We obtain HTML, XHTML or other output formats by running the Haskell web page in an appropriate rendering monad. The benefit of representing XML-like documents as a typed data structure/Haskell code is static rejection of bad documents -- not only those with undeclared tags but also those where elements appear in wrong contexts.

  • Haskell XML Toolbox 7.1. Uwe Schmidt announced a new version of the Haskell XML Toolbox. The main change is the step from cvs to darcs. The documentation has source links into the darcs repository. A tutorial is available in the Haskell wiki.

  • OmegaGB, Haskell Game Boy Emulator. Bit Connor announced OmegaGB, an emulator for the Nintendo Game Boy, written in pure Haskell. It uses gtk2hs for the user interface, but there is also a version that doesn't require gtk2hs and uses ascii art. You can find more information about the program at the website.

  • Takusen 0.6. Oleg and Alistair announced a new release of Takusen, the database library for Haskell. There are a large number of changes and bug-fixes in this release, including improved Oracle and PostgreSQL support.

  • hoogle.el. David House announced Hoogle.el, a simple Emacs Lisp library that nicely integrates Hoogle into Emacs.

  • Buggy nofib. Josep Silva Galiana announced a 'buggy' version of the nofib collection of Haskell programs. All programs contain one of these bugs: a bug that produces an incorrect result; a bug that produces non-termination; a bug that produces an exception (e.g., div by zero). The buggy nofib suite can be used to test debugging tools.

  • nobench: Haskell implementation shootout. Don Stewart announced nobench, a cross-implementation performance benchmark suite, based on nofib, comparing the performance of various Haskell compilers and bytecode interpreters on a range of programs.

  • Derangement version 0.1.0. Dennis Griffith announced the initial version of derangement, a library for finding a derangement of a set. A derangement of a set is a permutation with no fixed points, like many constrained matching problems it is susceptible to solution via a Max-flow algorithm.

  • HSH 1.0.0. John Goerzen announced the first release of HSH. HSH is designed to let you mix and match shell expressions with Haskell programs. With HSH, it is possible to easily run shell commands, capture their output or provide their input, and pipe them to/from other shell commands and arbitrary Haskell functions at will. HSH makes it easy to run shell commands. But its real power is in piping. You can pipe -- arbitrarily -- between external programs, pure Haskell functions, and Haskell IO functions

  • A new Haskell cookbook. Martin Bishop began a preliminary page, and fleshed out some of the headers/sub-headers on the wiki page for a good Haskell Cookbook (not a PLEAC clone). Please contribute.


  • 31 of january 2007: The first announced romanian book of Haskell, "Introducere in Haskell 98 prin exemple" (eng: An introduction in Haskell 98 by examples) by Dan Popa from the University of Bacau was published by EduSoft, Bacau, Romania, with a foreword by Simon Peyton-Jones. Details on the ro page. The book is dedicated to the Haskell community. Thank you !
  • (somewhere in february 2007) . Lect.Dr. Mihai Gontineac from The Dept.of Math. of the Al.I.Cuza University has also published his book, "Programare Functionala - O introducere utilizand limbajul Haskell" (eng: Functional programming - An introduction using the Haskell language") published by "Editura Alexandru Myller". The book is dedicated to the memory of the father of the author. The Bibliography of the book is containing the title of the G.Hutton's book "Programming in Haskell" declared by Lect.Dr. M.G. as beeing studied on january 31,2007. There is an other article published on 25 of january 2007, too. Thank you !(The release date of 28 of december 2006 according to author's email is unreal.) This indicates the existence of a new community of Haskell users from Iasi, Romania, too.
  • lhs2tex 1.12. Andres Loeh announced lhs2TeX version 1.12, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: highly customized output; liberal parser; generate multiple versions of a program or document from a single source; active documents: call Haskell to generate parts of the document (useful for papers on Haskell); a manual explaining all the important aspects of lhs2TeX.

  • hscom. Krasimir Angelov announced the hscom library. This is a FFI library for Microsoft COM. It is far from complete and it doesn't have automatic IDL to Haskell translator but if you have ever thought to start writing you own COM library for Haskell then please take a look. It is designed to be as close as possible to the standard FFI library for C.

  • DeepArrow 0.0: Arrows for 'deep application'. Conal Elliott announced the birth of DeepArrow, a Haskell library for composable 'editors' of pure values. DeepArrow enables 'deep function application' in two senses: deep application of functions and application of deep functions. These tools generalize beyond values and functions, via the DeepArrow subclass of the Arrow type class.

  • Phooey 0.1: functional user interface library. Conal Elliott announced version 0.1 of Phooey, an arrow-based functional user interface library. New in version 0.1: documentation, text input, boolean input/output, mtl. Phooey is now used in TV.

  • TV 0.0: Tangible Values. Conal Elliott announced TV, a library for composing tangible values (TVs): values that carry along external interfaces. In particular, TVs can be composed to create new TVs, and they can be directly executed with a friendly GUI, a process that reads and writes character streams, or many other kinds interfaces. Values and interfaces are combined for direct use, and separable for composability. See the project page.

  • polyparse 1.00. Malcolm Wallace announced the release of PolyParse, a collection of parser combinator libraries in Haskell. They were all previously distributed as part of HaXml, but are now split out to make them more widely available.

  • Data.Binary: binary serialisation. The Binary Strike Force announced the release of Binary, a high performance, pure binary serialisation library for Haskell. It is available from Hackage and darcs. The 'binary' package provides efficient serialisation of Haskell values to and from lazy ByteStrings. ByteStrings constructed this way may then be written to disk, written to the network, or further processed (e.g. stored in memory directly, or compressed in memory with zlib or bzlib).

  • DrIFT 2.2.1: support for Data.Binary. John Meacham announced that DrIFT 2.2.1 is out and now has support for the Data.Binary module.

  • A History of Haskell. Simon Peyton-Jones mentioned that the paper 'A History of Haskell: being lazy with class', authored by Paul Hudak, John Hughes, Phil Wadler and Simon, is finally done. You can get a copy now!

  • piggybackGHC 0.1. Martin Grabmueller announced the release 0.1 of piggybackGHC, a small utility package for using GHC for lexing and parsing Haskell source code. The library uses the GHC library for all the hard stuff, so all supported GHC extensions are available.

  • regex-tdfa 0.20. Chris Kuklewicz announced regex-tdfa, a 'tagged' DFA regular expression backend in pure Haskell, along with a suite of updates to the existing regex packages.

  • hpaste.org. Eric Mertens announced 'hpaste', the Haskell Pastebin. Developed over a few days by many of the members of the Haskell irc channel, it provies a reliable paste bot with Haskell-specific capabilities.


  • 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.


  • hscolour-1.6. Malcolm Wallace announced HsColour, a popular syntax-highlighter for Haskell code. It can generate ANSI terminal colour codes, HTML, and CSS, and can insert hyperlink anchors for function definitions (useful in conjunction with Haddock). HsColour-1.6 is now available. The major addition is a new LaTeX output mode.

  • Dimensional: Statically checked physical dimensions. Björn Buckwalter announced version 0.1 of Dimensional, a module for statically checked physical dimensions. The module facilitates calculations with physical quantities while statically preventing e.g. addition of quantities with differing physical dimensions.

  • vty 2.0. Stefan O'Rear announced a new major version of vty. Differences from 1.0 include: vty now uses a record type for attributes, instead of bitfields in an Int; vty now supports setting background colors; you can now explicitly specify 'default' colors; vty now supports Unicode characters on output, automatically setting and resetting UTF-8 mode.

  • 'Lambda Revolution' tshirts. Paul Johnson announced the creation of a new Haskell tshirt, on the theme of 'The Lambda Revolution'. Tshirts are available from CafePress, and the designs are freely available.

Archives by year