[Haskell] Haskell Weekly News: December 05, 2006
Donald Bruce Stewart
dons at cse.unsw.edu.au
Mon Dec 4 21:12:27 EST 2006
Haskell Weekly News
Issue 52 - December 05, 2006
Welcome to issue 52 of HWN, a weekly newsletter covering developments
in the Haskell community.
This week we see the 11th Haskell Communities and Activities Report
released, Visual Haskell 0.2 is available, and a suite of new
libraries and applications are announced.
Communities and Activities Report. Andres Loeh published the
Haskell Communities and Activities Report (11th edition, November
2006). The report is now available from the Haskell Communities home
page in several formats. The goal of the report is to improve the
communication between the increasingly diverse groups, projects and
individuals working on, with, or inspired by Haskell. When we try for
the next update, six months from now, you might want to report on your
own work, project, research area or group as well.
Visual Haskell prerelease 0.2. Krasimir Angelov announced that
there is a prerelease version of Visual Haskell available. This is
the first version that is: available for both VStudio 2003 and VStudio
2005, and distributed with a stable GHC version (6.6)
Haskell MIME library. Jeremy Shaw announced the availability of a
MIME processing library. This library is supposed to be able to parse
emails and decode various attachments, and generate emails with
attachments. The library includes modules that implement portions
of: RFC 2045, RFC 2046, RFC 2387 and RFC 2822.
Core (ghc-base) library. Bulat Ziganshin announced progress on the
Core library project, to divide the Haskell base library into two
parts: small compiler-specific one (the Core library proper) and the
rest: new, compiler-independent Base library that uses only services
provided by Core lib.
hpodder 0.99.0. John Goerzen announced hpodder 0.99.0, the first
beta candidate for making an eventual 1.0.0 release of hpodder.
hpodder is a podcast downloader that happens to be written in
Haskell. This version introduces two major new features: nicer
apt-like output and multithreaded downloading.
MissingH 0.16.3. John Goerzen released MissingH 0.16.3. Including
a new module MissingH.ProgressTracker which tracks the progress of
long-running tasks, and MissingH.Quantity which renders numbers
according to a quantification system such as SI or binary.
The restricted IO monad. Stefan O'Rear introduced RIO, an
experimental library for extensible restricted IO in Haskell.
Typed symbolic differentiation. Oleg Kiselyov showed symbolic
differentiation of a wide class of numeric functions without any
interpretative overhead. The functions to symbolically differentiate
can be given to us in a compiled form (in .hi files); their source
code is not needed. We produce a (compiled, if needed) function that
is an exact, algebraically simplified analytic derivative of the given
function. Our approach is reifying code into its `dictionary view',
intensional analysis of typed code expressions, and the use of staging
to evaluate under lambda.
This section covers the Haskell' standardisation process.
* Standard (core) libraries initiative: rationale
* Character literal question
This week's proposals and extensions to the standard libraries.
* Data.List documentation improvements
The Data.Array.* hierarchy is unsafe: segfaulting for fun and profit.
Spencer Janssen revealed that a malicious Ix instance can be used
to create segfaulting array programs in pure Haskell (under GHC or
Hugs), without the use of anything marked 'unsafe'. The array
operators trust the Ix instance to manage boundaries correctly. It was
pointed out that the Haskell standard requires Ix instances obey an
in-range side condition (just as Monad instances have side
Merging MissingH into the standard libraries. John Goerzen
proposed a renaming plan to aid splitting, and merging the
various MissingH modules into their own packages, and into base
Defining Cg, HLSL style vectors in Haskell. Slavomir Kaslev asked
about defining a couple of float2, float3, float4 Cg, HLSL style
vectors in Haskell.
Extracting sublists. Huazhi Gong asked about the best way to
extract sublists. Several solutions where suggested, including a
nice one by Oleg.
Generating 50 randoms. Huazhi Gong also asked about how best to
generate 50 random integers, leading to some lovely of creative
Haskell news from the blogosphere.
* Haskell Preliminaries: Implementations and Tools
* Simple Functions in Haskell
* Functions, Types, Function Types, and Type Inference
* Building Datatypes in Haskell (part 1)
* OOPSLA 2006 Summary
* Some Very Basic Haskell and Thoughts on Error Diagnosis
* Hello world! in Haskell
* Haskell - A valuable language
* On Functional Programming
* Listing files in Haskell
* Bits and Pieces of Haskell
* Typing like a Functional Programmer
* 6 Languages
* Closures and bottom for Java
* A newbie in Haskell land
* Interesting parsers in Haskell
* Meep for developers (finite-difference time-domain simulation software in Haskell)
* Algorithmic Music in Real Time using Haskell
* Rank-2 polymorphism is a strange thing
* Scalable computer programming languages
* Parser with Writer monad
* Metacognitive processes involved in deriving a solution to unzip
* Python Decorators - not desirable in Haskell
* Tools for haskell problem solving
* Technology Time Warp: trying out Lisp and Haskell
* Haskell programming language assignment
* Building GHC in under 10 minutes
* Lets play a game
* foldr, foldl
* Monads in Ruby Part 1: Identity
* Monads In Ruby Part 1.5: Identity
* New Languages
* You have to love Haskell
* Polynomials as numbers
* Parser combinators
* Lisp, you're old (but we love you anyway)
* Will somebody please think of the Parens!?
* Diving into Haskell
* FourFours in Haskell
Quotes of the Week
* Andreas Rossberg: To the functional programmer's eye a loop is
just a degenerate form of linear recursion written in an adhoc
* Cale: [on the discovery of a secret pi calculus monad] Someone
apparently wasn't informed that integration into the collective
Haskell hive-mind is mandatory
* secretgeek: Because we've reached the limits of Moore's Law, the
computers of the future will have many-core processors and all our
programs will need to be written in a combination of Haskell and
Lisp, that will itself be so powerful that the computers of the
future will not be able to implement any of our ideas without
creating time-travelling algorithms that borrow processing power
from other computers that are further into the future. This sounds
difficult, but in Lisp it isn't difficult at all. In Haskell this
is a built-in feature and the way you implement it is just a
* PaulPotts: Haskell is an even 'redder' pill than Lisp or Scheme
* Pseudonym: Assuming an advanced compiler, your code will be sent
to Oleg who will implement it in the type system.
* cjeris: [wants ghc for wii] Build and deploy an army of functional
dependencies and multi-parameter type classes to defend Hyrule
from the menacing MUTATRON and his legion of Java programmers!
* dons: My feeling is that the Java programmers will welcome us as liberators
* greentea: To learn Monads, one must /become/ a Monad.
* newsham: There are Just 1 types of people, Nothing and those who
* vegai: In Soviet Russia, YOU blow up GHC's brain!
Wed Nov 29 11:24:21 PST 2006. simonpj. Make SpecConstr work right
for nullary constructors. For totally stupid reasons, SpecConstr
didn't work for the (particularly easy) case of nullary constructors
like True and False. I just had some equations in the wrong order, so
that a Var case came first, which matches a nullary constructor, with
the constructor-application case afterwards. The fix is easy.
Fri Dec 1 04:53:04 PST 2006. Wolfgang Thaller. Decouple -O from
-fvia-C. Nowadays, there are situations where -fvia-C is definitely
unwanted, such as when -fPIC is used on some platforms, so we do not
want implicit -fvia-C any more.
About the Haskell Weekly News
Each week, 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. Headlines are
available as PDF. The Haskell Weekly News is also available in
To help create new editions of this newsletter, please see the
contributing information. Send stories to dons at cse.unsw.edu.au.
The darcs repository is available at darcs get
More information about the Haskell