[Haskell] Haskell Weekly News: April 27, 2007

Donald Bruce Stewart dons at cse.unsw.edu.au
Fri Apr 27 01:02:39 EDT 2007

Haskell Weekly News
Issue 61 - April 27, 2007

   Welcome to issue 61 of HWN, a weekly newsletter covering developments
   in the [1]Haskell community.

   The last week was a very exciting week for the Haskell community, with
   a new GHC release, the first release of Xmonad, a window manager
   written in Haskell, and DisTract, a new distributed bug tracker,
   written in Haskell. A number of new Haskell jobs were announced, and
   several new user groups were formed!

   1. http://haskell.org/


   GHC 6.6.1. Ian Lynagh [2]announced a new patchlevel release of GHC.
   This release contains a significant number of bugfixes relative to
   6.6, so we recommend upgrading. Release notes are [3]here. GHC is a
   state-of-the-art programming suite for Haskell. Included is an
   optimising compiler generating good code for a variety of platforms,
   together with an interactive system for convenient, quick development.
   The distribution includes space and time profiling facilities, a large
   collection of libraries, and support for various language extensions,
   including concurrency, exceptions, and foreign language interfaces.

   2. http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/12075
   3. http://haskell.org/ghc/docs/6.6.1/html/users_guide/release-6-6-1.html

   Xmonad 0.1. Spencer Janssen [4]announced the inaugural release of
   [5]Xmonad. Xmonad is a minimalist tiling window manager for X, written
   in Haskell. Windows are managed using automatic layout algorithms,
   which can be dynamically reconfigured. At any time windows are
   arranged so as to maximise the use of screen real estate. All features
   of the window manager are accessible purely from the keyboard: a mouse
   is entirely optional. Xmonad is configured in Haskell, and custom
   layout algorithms may be implemented by the user in config files.

   4. http://article.gmane.org/gmane.comp.lang.haskell.general/15131
   5. http://xmonad.org/

   DisTract: Distributed Bug Tracker implemented in Haskell. Matthew
   Sackman [6]announced DisTract, a [7]Distributed Bug Tracker. We're all
   now familiar with working with distributed software control systems,
   such as Monotone, Git, Darcs, Mercurial and others, but bug trackers
   still seem to be fully stuck in the centralised model: Bugzilla and
   Trac both have single centralised servers. This is clearly wrong, as
   if you're able to work on the Train, off the network and still perform
   local commits of code then surely you should also be able to locally
   close bugs too. DisTract allows you to manage bugs in a distributed
   manner through your web-browser. The distribution is achieved by
   making use of a distributed software control system, Monotone. Thus
   Monotone is used to move files across the network, perform merging
   operations and track the development of every bug. Finally, the glue
   in the middle that generates the HTML summaries and modifies the bugs
   is written in Haskell.

   6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/21857
   7. http://www.distract.wellquite.org/

   IOSpec 0.1. Wouter Swierstra [8]announced the first release of the
   [9]Test.IOSpec library, that provides a pure specification of some
   functions in the IO monad. This may be of interest to anyone who wants
   to debug, reason about, analyse, or test impure code. Essentially, by
   importing libraries from IOSpec you can the same code you would
   normally write in the IO monad. Once you're satisfied that your
   functions are reasonably well-behaved, you can remove the Test.IOSpec
   import and replace it with the 'real' functions instead.

   8. http://article.gmane.org/gmane.comp.lang.haskell.general/15134
   9. http://www.cs.nott.ac.uk/~wss/repos/IOSpec

   wl-pprint-1.0: Wadler/Leijen pretty printer. Stefan O'Rear
   [10]announced wl-pprint-1.0, the classic Wadler / Leijen pretty
   printing combinators, now in 100% easier to use [11]Cabalised form!
   PPrint is an implementation of the pretty printing combinators
   described by Philip Wadler (1997). In their bare essence, the
   combinators of Wadler are not expressive enough to describe some
   commonly occurring layouts. The PPrint library adds new primitives to
   describe these layouts and works well in practice.

  10. http://thread.gmane.org/gmane.comp.lang.haskell.general/15112
  11. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/wl-pprint-1.0

   London Haskell User Group. Neil Bartlett [12]announced the first
   meeting of the [13]London Haskell User Group on Wednesday 23rd May
   from 6:30PM. The meeting will be held at City University's main campus
   in central London, and Simon Peyton Jones will be coming to give a

  12. http://article.gmane.org/gmane.comp.lang.haskell.cafe/21955
  13. http://www.londonhug.net/2007/04/26/announcement-first-meeting-of-the-london-haskell-user-group/

   New York Functional Programmers Network. Howard Mansell [14]announced
   a New York area-based network for Haskell (and functional)
   programmers. The idea is to have a regular meeting through which
   functional programmers can meet to discuss experiences, get and give
   information, find jobs.

  14. http://article.gmane.org/gmane.comp.lang.haskell.cafe/21856

   Data.Proposition 0.1. Neil Mitchell [15]announced the release of
   [16]Data.Proposition, a library that handles propositions, logical
   formulae consisting of literals without quantification. It
   automatically simplifies a proposition as it is constructed using
   simple rules provided by the programmer. Implementations of
   propositions in terms of an abstract syntax tree and as a Binary
   Decision Diagram (BDD) are provided. A standard interface is provided
   for all propositions.

  15. http://article.gmane.org/gmane.comp.lang.haskell.general/15117
  16. http://www-users.cs.york.ac.uk/~ndm/proposition/

   Book reviews for the Journal of Functional Programming. Simon Thompson
   [17]sought interested contributors for book reivews for the Journal of
   Functional Programming. There is a list of books [18]currently
   available for review.

  17. http://article.gmane.org/gmane.comp.lang.haskell.general/15136
  18. http://www.cs.kent.ac.uk/people/staff/sjt/JFP/available.html

   Reminder: HCAR May 2007. Andres Loeh [19]reminded us that the deadline
   for the May 2007 edition of the Haskell Communities and Activities
   Report is only a few days away -- but this is still enough time to
   make sure that the report contains a section on your project, on the
   interesting stuff that you've been doing; using or affecting Haskell
   in some way.

  19. http://article.gmane.org/gmane.comp.lang.haskell.general/15161

   Template 0.1: Simple string substitution. Johan Tibell [20]announced a
   simple [21]string substitution library that supports substitution ala
   Perl or Python.

  20. http://article.gmane.org/gmane.comp.lang.haskell.general/15135
  21. http://darcs.johantibell.com/template

   hpaste for emacs. David House [22]announced hpaste.el, an Emacs Lisp
   library that integrates [23]hpaste, the Haskell pastebin, into Emacs.
   It provides two functions, hpaste-paste-region and
   hpaste-paste-buffer, which send the region or buffer to the hpaste
   server as required.

  22. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/12046
  23. http://hpaste.org/


   This section covers the [24]Haskell' standardisation process.

     * [25]General pattern bindings
     * [26]Relax the restriction on Bounded derivation
     * [27]data syntax
     * [28]Mathematical preludes
     * [29]Literate Haskell specification

  24. http://hackage.haskell.org/trac/haskell-prime
  25. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2178
  26. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2183
  27. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2184
  28. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2189
  29. http://thread.gmane.org/gmane.comp.lang.haskell.prime/2190


   This week's proposals and extensions to the [30]standard libraries.

     * [31]Add a MonadState instance for the Parsec monad
     * [32]Use 'Wide' API if System has it

  30. http://haskell.org/haskellwiki/Library_submissions
  31. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/6778
  32. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/6848


   This week's new libraries in [33]the Hackage library database.

     * [34]X11-extras-0.1
     * [35]hinstaller-2007.4.24
     * [36]IOSpec-0.1.1
     * [37]gd-3000.0.1
     * [38]xmonad-0.1
     * [39]YamlReference-0.3
     * [40]parsedate-2006.11.10
     * [41]chunks-2007.4.18
     * [42]wl-pprint-1.0
     * [43]Emping-0.1
     * [44]hsns-0.5.1
     * [45]htar-0.1
     * [46]cabal-upload-0.3
     * [47]unix-compat-0.1
     * [48]tar-0.1

  33. http://hackage.haskell.org/
  34. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/X11-extras-0.1
  35. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hinstaller-2007.4.24
  36. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/IOSpec-0.1.1
  37. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/gd-3000.0.1
  38. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/xmonad-0.1
  39. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/YamlReference-0.3
  40. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/parsedate-2006.11.10
  41. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/chunks-2007.4.18
  42. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/wl-pprint-1.0
  43. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Emping-0.1
  44. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hsns-0.5.1
  45. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/htar-0.1
  46. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/cabal-upload-0.3
  47. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/unix-compat-0.1
  48. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/tar-0.1


   GHC Release Plans. Simon Marlow [49]initiated a discussion on possibe
   release timelines for upcoming GHC versions.

  49. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/12014

   More inlining. Duncan Coutts [50]asked about more fine grained control
   over inlining in GHC, to ease term rewriting with RULES

  50. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/12046

   Haskell version of Norvig's Python Spelling Corrector. Pete Kazmier
   [51]spawned a long thread covering various implementations of spelling
   correctors in Haskell

  51. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/21780


   Quantitative Functional Programmer. Credit Suisse. [52]The Global
   Modelling and Analytics Group (GMAG) is responsible for producing
   state-of-the-art pricing, trading and hedging models for Credit
   Suisse. These models are used across a range of businesses in the
   Fixed Income and Equity Divisions. The groups mandate covers all major
   asset classes including Credit Derivatives, Commodities, Emerging
   Markets, Equity Derivatives and Convertibles, Exotics, Foreign
   Exchange, Fund Linked Products, Interest Rate Products and Mortgage
   Derivatives. GMAG operates globally with 85 members located in New
   York, London, Hong Kong and Tokyo. We are currently building a Domain
   Specific Language (embedded in Haskell) that will be used within GMAG.
   We require intelligent, motivated people to develop and extend this
   language. These individuals will also work with modellers to aid them
   in effectively applying these new tools.

  52. http://tinyurl.com/2lqoq9

   Haskell programmer positions. HAppS. HAppS LLC has [53]part-time and
   full-time positions open for Haskell programmers to: improve the open
   source Haskell codebase at HAppS.org; implement infrastructure to make
   it work well in Amazon S3/EC2 environments; make http://pass.net
   reliable enough to be used by live apps; build the mass market apps we
   want to run on top of the HAppS/Pass.net platform. We are looking for
   people who: have substantial experience programming Haskell; have
   experience building Internet apps (not necessarily in Haskell but
   would be good), and live in any of these places: the Internet, New
   York, San Francisco Los Angeles.

  53. http://article.gmane.org/gmane.comp.lang.haskell.cafe/21951

   Vacancy for a PhD student. Johan Jeuring [54]announced a vacancy for a
   PhD student in the Strategy Feedback project. Knowledge of Haskell is
   a big plus; implementation of most of the tools will be done in
   Haskell. Length: 1+3 years, Open University the Netherlands, Location:

  54. http://article.gmane.org/gmane.comp.lang.haskell.cafe/21740

Blog noise

   [55]Haskell news from the blogosphere.

     * [56]Overloading Haskell numbers, part 1, symbolic expressions
     * [57]Overloading Haskell numbers, part 2, Forward Automatic Differentiation
     * [58]Overloading Haskell numbers, part 3, Fixed Precision
     * [59]More Haskell parallelism
     * [60]Haskell status: impressed
     * [61]On haskell: writing a packet sniffer
     * [62]Must-see Haskell talks at OSCON 07
     * [63]Zen and the Art of Functional Programming
     * [64]Playing with sections in Haskell
     * [65]More playing with sections (and flip)
     * [66]Thinking in objects
     * [67]Robot localization using a particle system monad
     * [68]21 open problems in typed lambda calculus
     * [69]Arrows and security in Haskell
     * [70]Haskell GUI Programing
     * [71]Splitting a string in Haskell
     * [72]Introduction to Haskell: I like it a lot
     * [73]Haskell (ish) code, Java gui
     * [74]Haskell wikibook blurb
     * [75]Functional and Object-Oriented Programming
     * [76]Xmonad: a lightweight window manager
     * [77]Xmonad: a tiling window manager written in Haskell
     * [78]Xmonad: Haskell window management has arrived
     * [79]Xmonad: a minimal window manager in Haskell
     * [80]Xmonad: in the footsteps of wmii
     * [81]Xmonad: a new window manager
     * [82]Haskell code
     * [83]IO in Haskell
     * [84]Haskell records considered grungy

  55. http://planet.haskell.org/
  56. http://augustss.blogspot.com/2007/04/overloading-haskell-numbers-part-1.html
  57. http://augustss.blogspot.com/2007/04/overloading-haskell-numbers-part-2.html
  58. http://augustss.blogspot.com/2007/04/overloading-haskell-numbers-part-3.html
  59. http://mikeburrell.wordpress.com/2007/04/16/more-haskell-parallelism/
  60. http://austin.youareinferior.net/?q=node/21
  61. http://austin.youareinferior.net/?q=node/24
  62. http://www.serpentine.com/blog/2007/04/16/must-see-haskell-talks-at-oscon-07/
  63. http://azaidi.blogspot.com/2007/04/zen-and-art-of-functional-programming.html
  64. http://gimbo.org.uk/blog/2007/04/13/playing-with-sections-in-haskell/
  65. http://gimbo.org.uk/blog/2007/04/19/more-playing-with-sections-and-flip-in-haskell/
  66. http://braindump.dk/tech/2007/04/16/thinking-in-objects/
  67. http://www.randomhacks.net/articles/2007/04/19/robot-localization-particle-system-monad
  68. http://tlca.di.unito.it/opltlca/
  69. http://abstractabsurd.blogspot.com/2007/04/arrows-security.html
  70. http://araujoluis.blogspot.com/2007/04/haskell-gui-programing.html
  71. http://gimbo.org.uk/blog/2007/04/20/splitting-a-string-in-haskell/
  72. http://www.noulakaz.net/weblog/2007/04/20/i-like-haskell-a-lot/
  73. http://jpmoresmau.blogspot.com/2007/04/haskell-code-java-ui.html
  74. http://koweycode.blogspot.com/2007/04/haskell-wikibook-blurb.html
  75. http://weblog.raganwald.com/2007/04/we-dont-need-no-stinkin-scientific.html
  76. http://lennartkolmodin.blogspot.com/2007/04/xmonad.html
  77. http://www.osnews.com/story.php/17744/Xmonad-a-Tiling-Window-Manager-Written-in-Haskell/
  78. http://existentialtype.net/?p=113
  79. http://gimbo.org.uk/blog/2007/04/22/xmonad-a-minimal-window-manager-in-haskell/
  80. http://ephemient.livejournal.com/38438.html
  81. http://jpatrao-online.blogspot.com/2007/04/xmonad-new-windowmanager.html
  82. http://www.wardtek.ca/2007/04/haskell-code-number-one/
  83. http://www.friendofthepigeon.co.uk/wordpress/?p=54
  84. http://bloggablea.wordpress.com/2007/04/24/haskell-records-considered-grungy/

Quotes of the Week

     * apfelmus: Programming in Haskell is like dual-wielding two light
       sabers whereas programming in imperative languages is like being
       equipped with a blunt kitchen knife.

     * mwc: C++ is multiparadigm in the same way a dog with 4 table legs
       nailed onto it is an octopus

     * ptolomy: Sometimes Haskell feels like a personal trainer for
       proper program construction. You half-ass something, and the
       compiler doesn't let you get away with it and won't let you move
       on until you do it right.

     * dons: I wish you success and may your lambdas always beta reduce

     * quicksilver: May your years be long and your type inference
       algorithms sound.

     * inverselimit: So I tried as my first project in Haskell to write
       something that decomposes modules of polynomials using Schur-Weyl
       duality. This turned out to be a little tricky without being
       comfortable with the syntax

     * jcreigh: Could not find instance Ord for type ProgrammingLanguage

Code Watch

   Apr 19 07:23:58 PDT 2007. Simon Marlow. [85]More debugger
   improvements. :list shows the code around the current breakpoint. Also
   it highlights the current expression in bold (the bold/unbold codes
   are hardwired to the ANSI codes right now, I'll provide a way to
   change them later). :set stop cmd' causes cmd to be run each time we
   stop at a breakpoint. In particular, :set stop :list is particularly

  85. http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/20269

   Wed Apr 25 03:18:32 PDT 2007. simonpj. [86]Add
   -fwarn-monomorphism-restriction (on by default) to warn when the MR is
   used. Users often trip up on the Dreaded Monomorphism Restriction.
   This warning flag tells you when the MR springs into action. Currently
   it's on by default, but we could change that.

  86. http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/20359

   Thu Apr 26 02:37:19 PDT 2007. Pepe Iborra. New section on
   [87]debugging lambdas in the ghci user guide

  87. http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/20404

About the Haskell Weekly News

   Each week, new editions are posted to [88]the Haskell mailing list as
   well as to [89]the Haskell Sequence and [90]Planet Haskell. [91]RSS is
   also available, and headlines appear on [92]haskell.org. Headlines are
   available as [93]PDF.

   To help create new editions of this newsletter, please see the
   [94]contributing information. Send stories to dons at cse.unsw.edu.au.
   The darcs repository is available at darcs get

  88. http://www.haskell.org/mailman/listinfo/haskell
  89. http://sequence.complete.org/
  90. http://planet.haskell.org/
  91. http://sequence.complete.org/node/feed
  92. http://haskell.org/
  93. http://www.cse.unsw.edu.au/~dons/code/hwn/archives/20070427.pdf
  94. http://haskell.org/haskellwiki/HWN
  95. http://www.cse.unsw.edu.au/~dons/code/hwn

More information about the Haskell mailing list