---------------------------------------------------------------------------
Haskell Weekly News
http://sequence.complete.org/hwn/20070312
Issue 59 - March 12, 2007
---------------------------------------------------------------------------
Welcome to issue 59 of HWN, a weekly newsletter covering developments
in the [1]Haskell community.
This week we see the 2007 Haskell Workshop announcement, Haskell.org's
participation in the Google Summer of Code gets underway, and of
course, new libraries!
1. http://haskell.org/
Announcements
Google Summer of Code and Haskell.org. Malcolm Wallace [2]announced
that Haskell.org has once again applied to be a mentoring organisation
for the Google Summer of Code. If you are a student who would like to
earn money hacking in Haskell, or you are a non-student who has a cool
idea for a coding project but no time to do it yourself, then visit
the [3]SoC wiki to gather ideas, and add yourself to the list of
interested people! Add new ideas for projects!
2. http://article.gmane.org/gmane.comp.lang.haskell.cafe/20232
3. http://hackage.haskell.org/trac/summer-of-code
Haskell Workshop Call for Papers. Gabriele Keller [4]announced the
initial call for papers for the Haskell Workshop 2007, part of the
2007 International Conference on Functional Programming (ICFP). The
purpose of the Haskell Workshop is to discuss experience with Haskell,
and possible future developments for the language. The scope of the
workshop includes all aspects of the design, semantics, theory,
application, implementation, and teaching of Haskell.
4. http://article.gmane.org/gmane.comp.lang.haskell.general/14977
Data.CompactString 0.3: Unicode ByteString. Twan van Laarhoven
[5]announced version 0.3 of the Data.CompactString library.
Data.CompactString is a wrapper around Data.ByteString supporting
Unicode strings.
5. http://article.gmane.org/gmane.comp.lang.haskell.general/14973
harchive-0.2: backup and restore software in Haskell. David Brown
[6]announced release 0.2 of [7]harchive, a program for backing up and
restoring data. The package is available [8]from Hackage.
6. http://article.gmane.org/gmane.comp.lang.haskell.general/14972
7. http://www.davidb.org/darcs/harchive/
8. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/harchive-0.2
New release of regex packages. Chris Kuklewicz [9]announced new
versions of the regex-* packages
(base,compat,dfa,parsec,pcre,posix,tdfa,tre). There is a new [10]wiki
page with documentation relating to these packages. All packages are
available from [11]Hackage, under the [12]Text Category.
9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/20189
10. http://haskell.org/haskellwiki/Regular_expressions
11. http://hackage.haskell.org/packages/hackage.html
12. http://hackage.haskell.org/packages/archive/pkg-list.html#cat:Text
StaticDTD: type safe markup combinators from DTDs. Marcel Manthe
[13]announced a tool that transforms a Document Type Definition to a
library. The resulting library contains combinators that assure proper
nesting of elements. The plan is to add more constraints that will
also take care of the order of occurrence of children. The parsing of
the DTD is done with HaXml. The code is [14]available via darcs.
13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/20218
14. http://m13s07.vlinux.de/darcs/StaticDTD/
IPv6 support for network package. Bryan O'Sullivan [15]announced that
he'd added IPv6 support to the network package.
15. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/6363
Type-level binary arithmetic library. Oleg Kiselyov and Chung-chieh
Shan [16]announced a [17]new library for arbitrary precision binary
arithmetic over natural kinds. The library supports
addition/subtraction, predecessor/successor, multiplication/division,
exp2, full comparisons, GCD, and the maximum. At the core of the
library are multi-mode ternary relations Add and Mul where any two
arguments determine the third. Such relations are especially suitable
for specifying static arithmetic constraints on computations. The
type-level numerals have no run-time representation; correspondingly,
all arithmetic operations are done at compile time and have no effect
on run-time.
16. http://article.gmane.org/gmane.comp.lang.haskell.general/14961
17. http://pobox.com/~oleg/ftp/Computation/resource-aware-prog/BinaryNumber.hs
Haskell'
This section covers the [18]Haskell' standardisation process.
* [19]Deriving Functor
18. http://hackage.haskell.org/trac/haskell-prime
19. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2135
Libraries
This week's proposals and extensions to the [20]standard libraries.
* [21]Add IPv6 support to network library
* [22]Error handling conventions
20. http://haskell.org/haskellwiki/Library_submissions
21. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/6377
22. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/6382
Discussion
Avoiding intermediate data structures. David Roundy [23]opened
discussion on techniques for avoiding intermediate data structures in
Haskell code
23. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/20319
Maybe a different Maybe. Joachim Breitner [24]wondered about avoiding
intermediate Maybe constructs
24. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/20300
Blog noise
[25]Haskell news from the blogosphere.
* [26]STM, IO, and a Simple Persistence Model
* [27]Dynamic programming in Haskell
* [28]Collected 'good math/bad math' Haskell articles
* [29]3 open questions about monads
* [30]Documentation, libraries and speed matter
* [31]Why monads matter
* [32]Design Patterns in Haskell: bracket
* [33]Practical Haskell: shell scripting with error handling and privilege separation
* [34]Simple socket programming
* [35]'interact' for TCP sockets
* [36]Monads in C, part 3
* [37]Directory tree printing in Haskell. Part 2
* [38]Monads through Pictures
* [39]Notes on hacking Haskell
* [40]Wanted: Haskell Programmer
* [41]Why Publish CS Papers Without Code?
* [42]The 8 ways to report errors in Haskell
25. http://planet.haskell.org/
26. http://mult.ifario.us/articles/2007/03/04/stm-and-io
27. http://sequence.complete.org/node/263
28. http://scienceblogs.com/goodmath/goodmath/programming/haskell/
29. http://www.randomhacks.net/articles/2007/03/05/three-things-i-dont-understand-about-monads
30. http://kawagner.blogspot.com/2007/03/why-do-most-people-seem-to-use-inferior.html
31. http://www.rfc1149.net/blog/2007/03/06/why-monads-matter/
32. http://notes-on-haskell.blogspot.com/2007/03/design-patterns-in-haskell-bracket.html
33. http://cgi.cse.unsw.edu.au/~dons/blog/2007/03/06#programmable-semicolons
34. http://metavar.blogspot.com/2007/03/simple-socket-programming.html
35. http://stephan.walter.name/blog/computers/programming/haskell/interacttcp.html
36. http://sigfpe.blogspot.com/2007/03/monads-in-c-pt-iii.html
37. http://blog.moertel.com/articles/2007/03/07/directory-tree-printing-in-haskell-part-two-refactoring
38. http://www.bolour.com/papers/monads-through-pictures.html
39. http://metavar.blogspot.com/2007/03/haskell-hacking-notes-or-prelude-to.html
40. http://blogs.teamb.com/craigstuntz/archive/2007/03/09/WantedHaskellDeveloper.aspx
41. http://billmill.org/why_no_code
42. http://www.randomhacks.net/articles/2007/03/10/haskell-8-ways-to-report-errors
Quotes of the Week
* fishkandy: The problem with comparing apples to apples is that
haskell has 'mango daiquiri' as a basic fruit
* fax--: I wake up with a headache because of you, Haskell
* norpan: I use functions, but i don't use them as arrows: I prefer
silver bullets
* ray: Some people claim everything is lisp. One time I was eating
some spaghetti and someone came by and said: 'Hey, nice lisp
dialect you're hacking in there'
* roconnor: Damn it! Haskell pseudo code is indistinguishable from
actual code
* shapr: Today's nifty error message: *Main> thread
blotttchhhkrrreeeedaaa dddinbbbdllleooofcccikkkneeeidddt
eiiilnnnydddeeefffiiinnniiittteeelllyyy
* stepcut: C? isn't that some low-level language that compilers
output to?
* wkh: Why does the haskell webpage link to 'research papers' under
the 'getting started' section?
Code Watch
Tue Mar 6 06:31:12 PST 2007. Simon Marlow. [43]add noDuplicate#. This
primop ensures that the current computation is not being duplicated,
by calling threadPaused(). The idea is to use it inside
unsafePerformIO/unsafeInterleaveIO (see #986).
43. http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/19536
About the Haskell Weekly News
Each week, new editions are posted to [44]the Haskell mailing list as
well as to [45]the Haskell Sequence and [46]Planet Haskell. [47]RSS is
also available, and headlines appear on [48]haskell.org. Headlines are
available as [49]PDF.
To help create new editions of this newsletter, please see the
[50]contributing information. Send stories to dons at cse.unsw.edu.au.
The darcs repository is available at darcs get
[51]http://www.cse.unsw.edu.au/~dons/code/hwn
44. http://www.haskell.org/mailman/listinfo/haskell
45. http://sequence.complete.org/
46. http://planet.haskell.org/
47. http://sequence.complete.org/node/feed
48. http://haskell.org/
49. http://www.cse.unsw.edu.au/~dons/code/hwn/archives/20070312.pdf
50. http://haskell.org/haskellwiki/HWN
51. http://www.cse.unsw.edu.au/~dons/code/hwn