Posted in haskell, open source on September 2nd, 2010 3 Comments »
I just published the base64-bytestring library, which fills a surprising gap in Haskell's library coverage by adding support for base64 encoding and decoding of the ByteString type. The library is written in pure Haskell, and it's fast: 250 MB/sec encoding 200 MB/sec strict decoding (per RFC 4648) 100 MB/sec lenient decoding The above numbers compares [...]
Posted in haskell, open source on September 1st, 2010 5 Comments »
After several months of work, I'm pleased to announce the release of version 0.8.0.0 of the Haskell text library, which provides fast Unicode support with a pleasing API. Compared to previous versions, this has the following major changes: Improved performance. Some common functions, including support for Unicode I/O, are up to 3x faster than before. [...]
Posted in mercurial on August 10th, 2010 No Comments »
Here's a useful little tip if you need to use hg convert to generate a stripped-down copy of a Mercurial repository. For instance, maybe we have a tree that someone committed a large file to by accident, or perhaps someone accidentally checked some closed source code into an open source tree. If such a commit [...]
Posted in haskell on July 22nd, 2010 No Comments »
I'm on the program committee for the 2011 Practical Aspects of Declarative Languages (PADL) conference, so I heartily encourage you to submit a paper on that exciting functional programming project you've been working on. Topics of interest include: Innovative applications of declarative languages. Declarative domain-specific languages and applications. Practical applications of theoretical results. New language [...]
Posted in haskell on July 13th, 2010 2 Comments »
Thanks to diligent work by Johan, our new I/O manager is ready to merge into the main GHC tree. All the tests pass, and it’s performing well. I’ll post an update when it gets merged into HEAD. We also heard back from the peer reviewers for this year’s Haskell Symposium that our paper describing the [...]
Posted in haskell on July 2nd, 2010 8 Comments »
On the Haskell libraries mailing list, Cale Gibbard made an interesting suggestion for a couple of useful list-related functions that could be added to the standard list library. The particular one I'm interested in is his separate function: separate :: [a] -> [([a],a,[a])] The idea is that this function should produce a list of all [...]
Posted in haskell, open source on June 14th, 2010 2 Comments »
After a few months of blissfully doing precious little hacking in our spare time, Johan and I have returned to work on the new event manager for GHC. I spent the past few days writing a paper about the motivation, design, and internals of the new event manager, which I submitted to this year’s Haskell [...]
Posted in Uncategorized, haskell on March 3rd, 2010 3 Comments »
My goal in working on the new GHC I/O manager has been to get the Haskell network stack into a state where it could be used to attack high-performance and scalable networking problems, domains in which it has historically been weak.While it's encouraging to have an excellent networking stack (Johan and I now have this [...]
Posted in haskell on December 15th, 2009 2 Comments »
Earlier this evening, I released a new version of the Haskell text package. This one adds support for I/O, which in previous releases you had to roll by hand. The Data.Text.IO and Data.Text.Lazy.IO modules are the places you'll want to look for details of how to read and write text easily. The reason for this [...]
Posted in reading, software on December 2nd, 2009 6 Comments »
…if the world of blogging about software had by now developed some kind of a tradition of critical analysis? Over at Inside Higher Ed, Scott McLemee writes a careful and thoughtful review of Cornel West’s new book. It performs the delicate feat of being at once both generous to its subject and devastating in its [...]