[Haskell] Haskell Weekly News: Issue 118 - May 16, 2009
byorgey at seas.upenn.edu
Sat May 16 21:32:23 EDT 2009
Haskell Weekly News
Issue 118 - May 16, 2009
Welcome to issue 118 of HWN, a newsletter covering developments in the
Welcome to the Google Summer of Code special edition! I asked each
of the five students with accepted GSoC projects to describe what they
plan to work on. You'll find their descriptions below, with links to
their blogs. And keep watching this space: as I did last summer, I plan
to provide readers of the HWN with weekly updates on the progress of
the GSoC projects.
Google Summer of Code
Haddock improvements! Isaac Dupree is working on improvements to
Haddock. "Besides the various inevitable small fixes/improvements,
my specific projects are to make cross-package documentation work, and
to refactor the comment-parsing out of GHC and into the Haddock
EclipseFP. Thomas Ten Cate will be working on EclipseFP: "Compared
to more mainstream languages, Haskell has surprisingly poor IDE
support, even though its static typing system allows for much more help
from the IDE than in the case of dynamic languages. For the Java
language, a very mature and powerful IDE exists in the form of Eclipse.
A plugin for Haskell support in Eclipse, called EclipseFP, is in the
works, but its development has been standing still for some time. I
will bring EclipseFP to a more usable state. For this, I will use the
Scion IDE library, which interfaces with the GHC API, so that more
advanced features like type inference become possible. I will also add
support for Cabal. Hopefully, this type of IDE support will lead to
greater acceptance and use of Haskell, and be useful for development as
well as education."
Improving the Haskell space profiling experience. Gergely Patai's
project will be focused on space profiling: "At the present moment,
heap profiling Haskell programs means analysing logs off-line, using
conversion tools to visualise data. However, instead of generating
graphs with hp2ps, it should be possible to present the data in a
graphical application in real time, which is useful while developing
interactive applications, and it should also be made easier to export
profiler output in different formats. The aim of the project is to
create a set of tools that make heap profiling of Haskell programs
easier in various ways. In particular, the following components are
planned: a library to process profiler output in an efficient way and
make it easily accessible for other tools in the future; a real-time
visualiser (most likely using OpenGL); some kind of history manager to
keep track of profiling data and make it possible to perform a
comparative analysis of performance between different versions of your
program; a maintainable and extensible replacement for hp2ps; and
converters to provide input for other profiling tools."
haskell-src-exts -> haskell-src. Niklas Broberg: "My project, dubbed
'haskell-src-exts -> haskell-src' is really two projects in one
wrapping. The first milestone is to bring my haskell-src-exts library
to the point where it can supersede the old haskell-src library as the
de facto package for haskell source manipulation. The main problem that
I need to solve is to implement a scheme that lets the user decide what
extensions to recognize when parsing a source document. Currently,
haskell-src-exts assumes all extensions are always on, which means that
some valid H98 programs will be incorrectly parsed due to stolen syntax
by e.g. Template Haskell. The second milestone is to extend the focus
from source code to full source documents, and implement a scheme for
handling comments as well. The ultimate goal here is to have (pretty .
parse) == id, to allow haskell-src-exts to be run on source documents
without changing them. This would open up for some really interesting
applications, in particular refactoring tools that could automatically
apply transformations to a source document while still preserving
darcs. Last but not least, Petr Rockai will be working on
improvements to darcs: "My project revolves around the idea of fast
darcs for medium and large repositories. Three are quite a few
haskellers who use darcs in their day to day (haskell) work. A fair
number of hackage packages is maintained in darcs. Even though many of
these repositories are of a relatively modest size, there is a number
of relatively large real-world darcs repositories out there. The
primary target of the project is to improve scalability of darcs for
large working trees. This should help those users with existing large
darcs repositories, as well as encourage people to use darcs for larger
projects, whenever the development model fits. I intend to make the
darcs working tree handling comparably fast to git. And then, git is
written in C, hand-tuned for a specific operating system. And unlike
mercurial, I do not plan to introduce a C library for low level
routines. So let's prove that Haskell is up to the challenge."
2009.2.1: version freeze for Haskell Platform approaching on Monday.
Don Stewart announced that the last chance to propose bug fix
version bumps to be included in the first minor release (2009.2.1) of
the Haskell Platform is Monday. Please ensure that, as maintainer
for one of the 2009.2.x series of packages, any bug fixes are in place
by Monday, or they'll be bumped to the next platform release.
OpenGL 126.96.36.199. Sven Panne announced the release of a new version
of the OpenGL package. This is a feature release, containing a
number of changes and additions.
Programming in Haskell -- solutions to exercises. Graham Hutton
announced that solutions to the exercises from "Programming in
Haskell" are now available online.
Bookshelf. Emil Axelsson announced the first release of
Bookshelf, a simple document organizer with some wiki
functionality. Documents in a directory tree are displayed as a set of
HTML pages. Documents in Markdown format are converted to HTML
automatically using Pandoc.
Request for feedback: HaskellDB + HList. Brian Bloniarz requested
feedback on a branch of HaskellDB which replaces the home-grown
Record code with HList records.
RESTng 0.1 + RedHandlers 0.1 (request handlers) + YuiGrids 0.1 (yahoo
grids). Sergio Urinovsky announced the release of three new
packages developed for a RESTful web framework called RESTng:
RESTng, redHandlers, and yuiGrid.
#haskell.pt IRC channel. Marco Túlio Gontijo e Silva announced the
formation of the #haskell.pt channel on irc.freenode.net for
Fun with type functions. Simon Peyton-Jones requested feedback on a
draft tutorial paper about type families (aka associated data
types, or type functions).
conflicting variable definitions in pattern. Martin Hofmann asked
about the possibility of repeated variables in patterns, resulting in
an interesting discussion.
Removing mtl from the Haskell Platform. Russell O'Connor began a
discussion around the possibility of removing the mtl package from
the Haskell Platform, and replacing it with something more modern.
PhD position in Nottingham. vxc announced the availability of a new
PhD position in the Functional Programming Laboratory at the University
of Nottingham. The topic of research for the project is "Programming
and Reasoning with Infinite Structures": it consists in the theoretical
study and development of software tools for coinductive types and
Haskell news from the blogosphere. Blog posts from people new
to the Haskell community are marked with >>>, be sure to welcome them!
* Leif Frenzel: EclipseFP is going to be reloaded.
* Tom Schrijvers: Dictionaries: Eager or Lazy Type Class
Witnesses?. Can type class dictionaries be optimized by treating
* Real-World Haskell: RWH Now In The Kindle Store.
* JP Moresmau: Adding a Writer Monad transformer.
* Ketil Malde: Using a phantom type to label different kinds of
* Ivan Lazar Miljenovic: Functions All The Way Down. Ivan's talk
on lambda calculus.
* Thomas M. DuBuisson: Fun with Distributed Hash Tables.
Distributed hash tables in Haskell.
* Darcs: darcs joins the Software Freedom Conservancy.
* Mark Wassell: Just Grapefruit. Mark's first impressions of the
* Roman Cheplyaka: LambdaCube accepted to JSSP. Jane Street is
funding development of the LambdaCube 3D rendering engine.
* >>> Joel Neely: BuilderBuilder: The Model in Haskell.
* Brandon Simmons: directory-tree module released.
* >>> Sadek Drobi: Paul Hudak on Haskell. An interview with Paul
* >>> dayvan cowboy: Blast from the past: a stochastic monad in
* Matthew Podwysocki: Type Classes Are The Secret Sauce .
* Remco Niemeijer: Programming Praxis - Priority Queues. A
priority queue implementation using a leftist heap.
* >>> Y. Liang: A Lambda Calculus Interpreter in Haskell.
Quotes of the Week
* seydar: what's the nick of the drug addict who wrote learn you a
haskell? and i mean that in the best possible way.
* roconnor: String is kinda a poor data type for strings.
* kyevan: I had a haskell-related dream last night. Sorta. I was
beaten up by some kids because I tried to go somewhere my type
didn't match, apparently.
* edwardk: Haskell 98 is the Windows 98 of standards ;)
* PhilipWadler: I'm delighted to learn that "a monad is a monoid in
the category of endofunctors"---anyone know where I can find a good
* David Leimbach: Don't play with your monads... eventually you'll go
About the Haskell Weekly News
New editions are posted to the Haskell mailing list as well as to
the Haskell Sequence and Planet Haskell. RSS is also
available, and headlines appear on haskell.org.
To help create new editions of this newsletter, please see the
information on how to contribute. Send stories to byorgey at cis
dot upenn dot edu. The darcs repository is available at darcs get
More information about the Haskell