[Haskell] Haskell Weekly News: Issue 127 - August 8, 2009
byorgey at seas.upenn.edu
Sat Aug 8 12:00:31 EDT 2009
Haskell Weekly News
Issue 127 - August 08, 2009
Welcome to issue 127 of HWN, a newsletter covering developments in the
Apologies for the long hiatus, mostly due to organizing Hac phi (which
was a great success!). And I'm now going on vacation for a couple
weeks and may have limited Internet access, so don't hold your breath
for an issue of the HWN next week either... anyway, a ton of
interesting stuff has happened over the past three weeks (of course),
including a bunch of discussion on the Haskell-prime mailing list, a
number of package releases, Haskell Platform discussion, and more.
bindings-posix 0.0.2. Mauricio announced bindings-posix, a low
level binding to Posix. It makes use of facilities and design from the
bindings-common package to map the standard Posix library.
bindings-common 0.2.1. Mauricio announced a new release of
bindings-common, which offers basic code that provides a common
design standard and common utilities for writing modules providing
low-level foreign library bindings. The major new feature of this
release is the availability of hsc2hs custom macros, and a
corresponding reduction in code size.
Dyre - Dynamic Program Recompilation (Xmonad-style configuration). Will
Donnelly announced the release of dyre, a library for
xmonad-style program recompilation. It is based in spirit after the
HConf library written by the Yi project, but with a focus on simple
integration, state persistence as an optional feature, and Windows
nntp 0.0.2. Maciej Piechotka announced the release of nntp, a
library to connect to nntp (i.e. mainly USENET) servers. This version
represents a complete rewrite from version 0.0.1, including a new NntpT
monad and basic support for XHDR.
GLUT 220.127.116.11. Sven Panne announced a new version of the GLUT
package, which depends on the new OpenGL, StateVar and Tensor packages,
but is otherwise unchanged except for a new demo.
OpenGL 18.104.22.168. Sven Panne announced a new version of the
OpenGL package, which is now only a convenience layer upon the
OpenGLRaw and GLURaw packages, written in in pure Haskell
without the FFI. The latter two packages load the native libraries
dynamically and do not rely on any C headers, making it possible to
build all OpenGL-related packages even on machines without any
installed native OpenGL support.
yices 0.0.0.1. Ki Yung Ahn announced yices, a Haskell interface
to the Yices SMT solver.
ALUT 22.214.171.124. Sven Panne announced a new version of the ALUT
package, which now depends on the highly portable StateVar package
instead of OpenGL.
OpenAL 126.96.36.199. Sven Panne announced a new version of the
OpenAL package, which now depends on the highly portable
StateVar, ObjectName and Tensor packages, instead of
Tensor 188.8.131.52. Sven Panne announced the Tensor package, yet
another spin-off of the OpenGL package, containing a few tensor data
types and their instances for some basic type classes.
darcs 2.3.0. Petr Rockai announced a new stable release of
darcs, version 2.3.0. This version includes a number of
improvements and bugfixes over the previous stable release, 2.2.
Moreover, work has been done to improve performance of "darcs whatsnew"
for large repositories.
uacpid-0.0.4. Dino Morelli announced the release of uacpid, a
daemon designed to be run in userspace that will monitor the local
system's acpid socket for hardware events. These events can then be
acted upon by handlers with access to the user's environment.
Korean translation of "Programming in Haskell". Ki Yung Ahn
announced a new non-English book on Haskell, published on July
TABI 0.1: a typeful tagged cross-language calling convention. Bulat
Ziganshin announced a preliminary release of TABI, a library
providing a typeful, tagged cross-language calling convention.
Typeful/Text/HTMLs (for AngloHaskell/for scrap?). Jon Fairbairn
announced an HTML library which guarantees standards compliance
via types, even down to the nesting restrictions.
yst 0.2.1. John MacFarlane announced the release of yst, which
generates static websites from YAML or CSV data files and
StringTemplates. This approach combines the speed, security, and ease
of deployment of a static website with the flexibility and
maintainability of a dynamic site that separates presentation and data.
The Haskell Platform 2009.2.0.2. Don Stewart announced the third
release (2009.2.0.2) of the Haskell Platform, a single, standard
Haskell distribution for everyone.
atom 0.1.0. Tom Hawkins announced the 0.1.0 release of Atom, a
Haskell DSL for hard realtime applications. This release includes
support for assertions and functional coverage to aid simulation and
tkhs-0.1.* Presentation Utility. Yusaku Hashimoto announced the
release of tkhs-0.1.*, a simple presentation utility. If you are
thinking PowerPoint is overkill for your presentation, Tkhs may fit the
RFC: Unicode support in Alex. Jean-Philippe Bernardy requested
feedback on his modifications to the Alex lexer generator to
support Unicode. The prototype is available on github.
The Monad.Reader - Issue 14. Wouter Swierstra announced Issue 14 of
The Monad.Reader. This issue contains three articles "Fun with
Morse Code" by Heinrich Apfelmus, "Hieroglyph 2: Purely Functional
Information Graphics Revisited" by Jefferson Heard, and "Lloyd
Allison's Corecursive Queues: Why Continuations Matter" by Leon P
TBC: Testing By Convention. Peter Gammie announced the release of
TBC, a test harness which has features complementary to existing
harnesses: it attempts to compile and run all tests, even if some do
not compile or run; and tests following conventions require a lot less
Elerea version 1.x.x. Patai Gergely announced an update of his FRP
library, Elerea, along with some updates to the accompanying
example programs. The interface was changed into a
monadic-applicative hybrid that distinguishes stateful and stateless
combinators for safety reasons: most importantly, the latcher was
removed due to various practical issues, and it is replaced by much
better behaved stateless higher-order constructs. The library is now
capable of handling arbitrary higher-order signals.
haskell-src-exts-1.1.0. Niklas Broberg announced the release of
haskell-src-exts-1.1.0, bringing you tuple sections, comments, and
a few bug fixes.
graphviz-29184.108.40.206. Ivan Lazar Miljenovic announced a bug fix
release of the graphviz package, which fixes a bug spotted by
Srihari Ramanathan where the Dot representation of Color values were
double-quoted when they shouldn't have been.
Leksah 0.6. Hamish Mackenzie announced the 0.6 release of
Leksah, a Haskell IDE. New features include integrated GHCi based
debugging, multi-window support, improved layout control, regular
expression find and replace, ability to grep files in the current
package, and improved Mac OS X integration.
Semantic Web. Vasili I. Galchin announced the cabalisation of
Swish-0.2.1 (Semantic Web Inference uSing Haskell), a semantic web
toolkit designed and implemented by Graham Klyne. The package now
builds on GHC 6.8.2, with more improvements planned.
graphviz-29220.127.116.11. Ivan Lazar Miljenovic announced a bug-fix
release to fix the problems with Either-based Attributes in the
previous release (2918.104.22.168), spotted mainly by Zsolt Dollenstein.
cautious-file 0.1.1: Ways to write a file cautiously, to avoid data
loss. Robin Green announced the first public release of
cautious-file, which provides a writeFile function that has several
advantages over Prelude.writeFile: it uses the recommended way of
writing a file on POSIX, so as not to expose the user to the risk of
data loss after a crash or power failure; and it uses a temporary,
randomly-named file for writing and only overwrites an existing file
once the write is complete.
Google Summer of Code
Progress updates from participants in the 2008 Google Summer of
Haddock improvements! Isaac Dupree has cleaned up most of the loose
edges on cross-package documentation, and has begun moving comment
parsing from GHC to Haddock.
EclipseFP. Thomas Ten Cate is finally happy with his refactorings
of the Scion client, and has done quite a bit of cleanup of
compilation warnings and unit tests.
Improving the Haskell space profiling experience. Gergely Patai posted
about segfaults with gtk2hs, and using Cairo instead of OpenGL for
rendering, and has some nice screenshots of the profiling client.
haskell-src-exts -> haskell-src. Niklas Broberg has started working
on comment support.
Fast darcs. Petr Rockai has made much progress, released
darcs 2.3.0, and posted a discussion on patch formats.
Adding binary to the Haskell Platform. Don Stewart began a
discussion thread on the possibility of adding the binary
package to the Haskell Platform.
Thinking about what's missing in our library coverage. Don Stewart
asked how to identify packages that ought to be added to the
Haskell Platform, and areas of functionality that are missing.
Proposal: TypeDirectedNameResolution. Johannes Waldmann began a
discussion on a proposed language extension, type-directed name
Implicit concatenation in list comprehensions. Max Bolingbroke started
a discussion on a proposed syntax extension to allow multiple
expressions on the left-hand side of a list comprehension, resulting in
Postdoc and Ph.D. position on 3gERP-project at DIKU. Fritz Henglein
announced the availability of a postdoc position and a Ph.D.
scholarship at the Department of Computer Science, University of
Copenhagen (DIKU) within 3d generation enterprise resource planning
systems (3gERP), a collaborative strategic research project with
partners at DIKU (computer science), Copenhagen Business School (CBS,
information systems) and Microsoft Development Center Copenhagen (MDCC,
Haskell news from the blogosphere. Blog posts from people new
to the Haskell community are marked with >>>, be sure to welcome them!
* >>> Joel Ray King: Starting out with Haskell.
* JP Moresmau: Yoohoo: mazes of monad is kind of popular!.
* Don Stewart (dons): Haskell Package Popularity Rankings :
* David Amos: Where we've been, and where we're going.
* >>> Michael Feathers: Functional Refactoring and "You Can't
Get There From Here".
* Magnus Therning: Updating GHC on Arch.
* Tom Schrijvers: Monadic Constraint Programming with Gecode.
* Luke Plant: Haskell string support.
* Don Stewart (dons): The Haskell Platform 2009.2.0.2.
* Gergely Patai: More profiling goodies.
* Don Stewart (dons): Heuristics for Blessing Software Packages.
* David Amos: How to count the number of positions of Rubik's
* Edward Kmett: Slides from Hac Phi: "All About Monoids".
* Brent Yorgey: Primitive species and species operations, part
* Magnus Therning: Making a choice from a list in Haskell, Vty
* Brent Yorgey: Primitive species and species operations.
* Thomas ten Cate: The Green Bar.
* Petr Rockai: soc progress 10.
* Brent Yorgey: Hac phi roundup.
* Brent Yorgey: More from Hac phi.
* Roman Cheplyaka: CCC #5: Trial.
* Eric Kow: some ideas for practical QuickCheck.
* Nathan Sanders: Profiling in Haskell, part 2.
* >>> Björn Winckler: Inverse functions in Haskell.
* >>> Alex Handy: Everyone's talking about Haskell.
* Niklas Broberg: Starting on the comment support .
* Gergely Patai: Pango font rendering on an OpenGL canvas .
* Brent Yorgey: Hac phi day 2.
* Petr Rockai: Patch Formats.
* Brent Yorgey: Introducing Math.Combinatorics.Species!.
* Magnus Therning: Making a choice from a list in Haskell, Vty
* Michael Snoyman: Embedding files in a binary.
* Darcs: darcs 2.3.0 is released!.
* Petr Rockai: Darcs 2.3.0.
* >>> Ionuţ: Haskell's prefix and infix notations.
* >>> Ionuţ: The minus operator in Haskell.
* >>> Ken Jenkins: Learning Haskell (Part 2).
* James Iry: Void vs Unit.
* Justin Grant: Generating pi in Haskell.
* Petr Rockai: soc progress 9.
* >>> Ken Jenkins: Learning Haskell (Part 1).
* Isaac Dupree: Next Project, Move doc-parsing to from GHC to
* Roman Cheplyaka: SchrÃ¶dinger's cat.
* Magnus Therning: Ping server in Haskell (not that kind of
ping, and rather silly).
* >>> hydo: Haskell and Hack fanboyism..
* Chris Smith: Calculating Multiplicative Inverses in Modular
* David Amos: Faster graph symmetries using distance partitions.
* Isaac Dupree: more cross-package docs details.
* Nick Cameron: ECOOP Day 3 - Day 1 of the main conference .
* Ryan Lothian: Haskell Graph Plotter - Part 1.
* >>> Matias Giovannini: Monadic Golf.
* >>> Stephan Mann: Cool Haskell Function.
* >>> n0ne: How do you use Haskell at work?.
* Adam Blinkinsop: Mastermind Solver in Haskell.
* Ivan Uemlianin: decorate-sort-undecorate in Haskell --
* Don Stewart: Interview for SDTimes: "Everyone's talking about
* Don Stewart: Haskell Platform Progress Report.
* David Amos: Strong generating sets for graph symmetries.
* Chris Smith: The Magic of Type Classes.
* Twan van Laarhoven: CPS based functional references .
* Thomas ten Cate: More robust Scion client code.
* Paul Butler: N-Queens in a Tweet.
Quotes of the Week
* dons: i heard there were webservers written in languages other than
* yrlnry2: #haskell is the most functional channel I've ever seen.
* JonFairbairn: And one of the tests failed because Bolivia is now
the Plurinational State of Bolivia, so I've add a patch for that.
I've seen politics get in the way of programming, but I've never
had a bug caused by /international/ politics before.
* Adamant: ah, monads. the pons asinorum of Haskell.
* QP: i drink i'm two thunk for this... i'm seeing (Double, Double)
* benmachine: wait why am I giving advice I don't know anything
* jfredett: <shapr> @yow ! <jfredett> YOW! I seem to SEE a SHAPR
asking for FUNNY ZIPPY QUOTES, TOO bad I left them in my OTHER
* Berengal: Anyone doubting the immutable value philosophy needs to
* badsheepy: [in response to a spammer] my word, i feel immediately
compelled to medicate myself.
* monochrom: Haskell has solved programming. All that can be said
programming is already said in tutorials and the haskell wiki. That
is why we drift to meta topics.
* kalven: <yottis> i thought there were like 10 haskell jobs in the
world, all in the "let's replace excel sheets with something else"
industry <kalven> there are at least 20.
* BMeph: okmij.net, conal.net, comonad.reader, and
sigfpe.blogspot.com; the four horsemen of the Haskell Apocalypse.
* jaredj: [on parsec] i thought i got it but i need to 'try' again
* gwern: *ponders Haskell nerdcore: 'I'm all about exact math, yo; I
eat CReal for breakfast'*
* Baughn: remember that comments take up space in compiled Haskell
programs, and furthermore they take up processing time if execution
passes through them. For these reasons, keep comments to a minimum,
and never put comments inside of optimized Haskell code. Ideally
all of your comments will lie outside of the path of execution.
* gbacon: okay, I just tried to type Monday, but it came out Monady.
* BenLippmeier: Are Haskell and OCaml destined to be The Velvet
Underground of programming languages, where hardly anyone has heard
them, but everyone who does forms a band?
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