[Haskell] ANNOUNCE: Debian library

Jeremy Shaw jeremy.shaw at linspireinc.com
Tue Apr 3 18:04:51 EDT 2007

At Tue, 3 Apr 2007 13:04:36 -0700,

> Sounds like your duplicating a lot of the functionality of jgoerzen's
> MissingH library. http://software.complete.org/missingh

yes. but better ;)

> Not all of your functionality is subsumed, but he has a control-file
> parser and a version type too. 

Yes and no. There are a few key differences, unless there is a newer
version of his library that I do not know about.

Our debian/control parser works with ByteStrings and Strings. When
parsing an 18MB Packages file, there is a significant difference in
speed/mem usage. The Strings version takes around 180MB of RAM and 30
secs. The ByteString takes around 20MB and less than one
second. (hoo-ray for ByteString!)

Also, I believe John's Debian version compare function just calls:

 dpkg --compare-versions

and his DebVersion is defined as 

 > newtype DebianVersion = DebVersion String

And the Ord instance uses unsafePerformIO to call 'dpkg
--compare-versions'. So, his library has some portability and
scalability issues.

Also, our library has a beefier API.

Anyway, the point of releasing our library (and making it BSD3) is to
avoid any further duplication of effort :)


ps. I hope this doesn't sound like I am ragging on John. He has some
fine libraries, which we happily use. His Debian library was just not
quite what we needed.

More information about the Haskell mailing list