Release Announcements

Control.Event Released

Submitted by TomMD on Sat, 02/16/2008 - 11:22am.

I've released control-event (on, which provides a system to schedule and cancel IO events for given System.Time.ClockTimes. While designed prior to the release of Control.Timeout, it is very similar, the main differences are:

  1. Control.Event requires initilization while Control.Timeout hides this via unsafePerformIO.
  2. Control.Event can add events in the STM monad using addEventSTM. While Control.Timeout has an addEventAtomic, they aren't drop in replacements for each other (addEventAtomic is an IO action that returns an STM operation).
  3. Control.Timeout externally interfaces by time deltas (Float) while Control.Event is based on absolute ClockTimes.
  4. Control.Timeout uses only one Haskell thread while Control.Event needs two.
  5. Control.Event will not duplicate EventIds once the counter overflows. The possibility of this happening in Control.Timeout is entirely theoretical - I'm not claiming there is a practical difference.

Future Changes:

  • I'll either expand or eliminate the extra features of Event Preprocessing.
  • If no one uses it, I'll probably be getting rid of the ability to run expired actions in the event system thread.
  • I'm guessing Data.Time works on Windows. So long as I don't learn otherwise, I'll move from the old-time package to the 'time' package.
  • I'll add a shim to allow adding events using time deltas.

EDIT: I should add that Control.Timeout performs MUCH better.

Let me know if you find this useful!

Haskell Xcode Plugin

Submitted by humasect on Mon, 01/08/2007 - 2:46pm.

Thanks to Damien Bobillot for writing the Objective Caml plugin, and his efforts in researching the Xcode plugin API interface, I've written in the last week, an Xcode plugin for Haskell.

Thanks to everyone for their direct and indirect support.

A Flurry of Announcements

Submitted by jgoerzen on Thu, 05/05/2005 - 5:36am.

Getting caught up on announcements here...

Issue Two of The Mondad.Reader is out. For issue two, the subjects are Template Haskell, better module compatibility, exploring dark corners of GHC, domain specific languages, and the Foreign Function Interface.

A new compiler, JHC, was recently announced. Its goal is to be able to compile Haskell code to ANSI C. A working prototype already exists.

The fptools CVS repository is now available in via a darcs mirror. There has been discussion about how a permanent conversion could be done.

New MissingH and MissingPy

Submitted by jgoerzen on Wed, 04/06/2005 - 7:47am.

Two new releases today:

First, MissingH, from the announcement, the major new features are compatability with the latest GHC and Hugs, CSV parser, parser for some Debian files, and the new wholeMap function.

A new version of MissingPy is also out, with only minor updates to work with the latest Cabal code.

A flurry of Haskell Implementations with Cabal

Submitted by ijones on Fri, 03/11/2005 - 7:53pm.

In a flurry ... of... announcements on the Haskell mailing list today, all of the major Haskell implementations released versions of their compilers or interpreters.

The fun thing for me, is that they all come with The Haskell Cabal. This is an enabling technology for packagers and an eventual CPAN-like package database for Haskell tools. Each of today's release announcements highlighted Cabal.

This effectively adds up to the first major release of the Haskell Cabal, 0.6! Woohoo!

The point of the cabal is to make a standard way to build and install Haskell tools. Cabal packages come with a little Haskell script, Setup.lhs, which has a standard interface. The Cabal provides a library that implements this interface.

GHC 6.4 is released!

Submitted by jgoerzen on Fri, 03/11/2005 - 6:49am.

The event we've all been waiting for!

GHC 6.4 is released! Click the link for the full announcement as well as download links. There are also release notes available.

First Issue of The Monad.Reader Posted

Submitted by jgoerzen on Tue, 03/01/2005 - 6:10pm.

The first issue of the online Haskell e-zine, The Monad.Reader, has been posted.

Looks like good work to me. I think this will be a wonderful thing for the Haskell community.

hs-plugins 0.9.8 released

Submitted by shapr on Wed, 02/23/2005 - 3:21am.

Don Stewart's hs-plugins is a cool tool for dynamically loading haskell modules at runtime. hs-plugins history begins with GHCi, which was the first interpreter-like software for GHC. Some time later, Andre Pang wrote the RuntimeLoader, which turned GHCi into a library allowing any Haskell application to do dynamic loading. RuntimeLoader was very close to GHCi, the user needed to handle library dependencies themselves, for example. hs-plugins is a complete solution to dynamic loading in Haskell, it has lots of features and can do all sorts of nifty things.

hs-plugins includes spiffy features like eval, make, and load. The eval function does compiling, loading, and executing a single string's worth of code. the make function checks a source module and its dependencies for any changes since the last compilation, and recompiles and reloads all changed modules.

hs-plugins is already used in several applications. One especially nice example is the Yi editor from the same author, where hs-plugins is used to allow the entire application to be dynamically reloaded from a single Boot.hs startup file.

Cabal 0.5 is out

Submitted by jgoerzen on Mon, 02/21/2005 - 7:32am.

Isaac Jones has posted Cabal 0.5. New features include hooks interface updates,bugfixes, a user's manual, and a little bit of refactoring. The Debian package has already been uploaded also. Here's the full changelog: