--------------------------------------------------------------------------- Haskell Weekly News http://haskell.org/haskellwiki/HWN Issue 40 - August 14, 2006 --------------------------------------------------------------------------- Welcome to issue 40 of HWN, a weekly newsletter covering developments in the Haskell community. Each week, new editions are posted to [1]the Haskell mailing list as well as to [2]the Haskell Sequence and [3]Planet Haskell. [4]RSS is also available, and headlines appear on [5]haskell.org. A mega super bumper issue, for the 1st birthday of the Haskell Weekly News 1. http://www.haskell.org/mailman/listinfo/haskell 2. http://sequence.complete.org/ 3. http://planet.haskell.org/ 4. http://sequence.complete.org/node/feed 5. http://haskell.org/ Announcements * The Haskell Workshop . Andres Loeh [6]announced the preliminary schedule of the Haskell Workshop 2006, part of the 2006 International Conference on Functional Programming (ICFP) 6. http://article.gmane.org/gmane.comp.lang.haskell.general/14104 * dbus haskell bindings . Evan Martin [7]announced preliminary D-Bus Haskell bindings. D-Bus is a message bus system, a simple way for applications to talk to one another. [8]More 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/13771 8. http://neugierig.org/software/hdbus/ * The GHC typechecker is Turing-complete . Robert Dockins was able to [9]show how that the GHC typechecker with multi-parameter typeclasses, functional dependencies, and undecidable instances is Turing-complete. 9. http://article.gmane.org/gmane.comp.lang.haskell.general/14088 * Haskell Program Coverage . Colin Runciman [10]announced the first release of hpc, a new tool for Haskell developers. Hpc records and displays Haskell program coverage. It provides coverage information of two kinds: source coverage and boolean-control coverage. [11]More here 10. http://article.gmane.org/gmane.comp.lang.haskell.general/14087 11. http://www.galois.com/~andy/hpc-intro.html * Smash your boiler-plate without class and Typeable . Oleg Kiselyov [12]described a new generic programming technique, expressive enough to traverse a term and return another term of a different type, determined by the original term's type/structure. [13]More details 12. http://article.gmane.org/gmane.comp.lang.haskell.general/14086 13. http://okmij.org/ftp/Haskell/syb4.hs * Paper: Software Extension and Integration with Type Classes . Ralf Laemmel and Klaus Ostermann [14]invite comments towards the final version of their paper [15]Software Extension and Integration with Type Classes 14. http://article.gmane.org/gmane.comp.lang.haskell.general/14040 15. http://homepages.cwi.nl/~ralf/gpce06/ * HSP.Clientside 0.01 . Joel Björnson [16]announced a release of his Summer of Code project HSP.Clientside 0.01. Present features include an embedding of (typed) JavaScript language in Haskell, a small combinator library for generating JavaScript code, and high-level interface to Ajax functionality. 16. http://article.gmane.org/gmane.comp.lang.haskell.general/14023 * Monadic probabilistic functional programing . Stefan Karrmann [17]announced that he had extended Martin Erwig's PFP library to support abstract monads, cabal and darcs 17. http://article.gmane.org/gmane.comp.lang.haskell.general/14012 * hdbc-odbc 1.0.0.1 . John Goerzen [18]released DBC-odbc, the ODBC backend driver for HDBC, version 1.0.0.1. 18. http://article.gmane.org/gmane.comp.lang.haskell.general/13998 * Few Digits 0.5.0 . Russell O'Connor This year, Few Digits competed in the [19]More Digits contest. To celebrate, version 0.5.0 of Few Digits is available. Few Digits 0.5.0 is now ten times faster and three times more complicated. Few Digits has been Cabalized for your convenience. [20]More info 19. http://rnc7.loria.fr/competition.html 20. http://r6.ca/FewDigits/ * System.FilePath 0.9 . Neil Mitchell [21]announced System.FilePath 0.9 21. http://article.gmane.org/gmane.comp.lang.haskell.general/13985 * The History of Haskell . Phil Wadler, John Hughes, Paul Hudak and Simon Peyton Jones [22]have been writing a paper, The History of Haskell, for the History Of Programming Languages conference (HOPL'07), and they invite feedback. Wiki page [23]here. 22. http://article.gmane.org/gmane.comp.lang.haskell.general/13983 23. http://haskell.org/haskellwiki/History_of_Haskell * AngloHaskell . Lemmih [24]mentioned that AngloHaskell will be held at Cambridge in August. The agenda includes beer, unicycles, hacking and other fun. [25]More info 24. http://article.gmane.org/gmane.comp.lang.haskell.general/13979 25. http://haskell.org/haskellwiki/AngloHaskell * Haskell XML Toolbox Version 6.0, 6.1 . Uwe Schmidt [26]announced [27]two new versions of the Haskell XML Toolbox. New features include ghc 6.4.2 support, better XPath integration, separate documentation for filter API and an arrow API 26. http://article.gmane.org/gmane.comp.lang.haskell.general/13924 27. http://article.gmane.org/gmane.comp.lang.haskell.general/13949 * Down the rabbit hole . Bulat Ziganshin [28]announced the availability of a new tutorial directed toward comprehensive explanation of the IO monad, and it's use in complex programs 28. http://article.gmane.org/gmane.comp.lang.haskell.general/13914 * ldap-haskell, arch2darcs and darcs-buildpackage . John Goerzen [29]posted new versions of these packages 29. http://article.gmane.org/gmane.comp.lang.haskell.general/13912 * Internships on GHC and Haskell at MSR Cambridge . Simon Peyton-Jones [30]announced that MSR Cambridge is taking interns year-round, not just in the summer months. GHC HQ are keen to attract motivated and well-qualified folk to work on improving or developing GHC. [31]More details 30. http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/10219 31. http://hackage.haskell.org/trac/ghc/wiki/Internships * FGL . Martin Erwig [32]announced a new release of his well known Functional Graph Library (FGL). 32. http://article.gmane.org/gmane.comp.lang.haskell.libraries/4948 * Takusen . Alistair Bayley and Oleg Kiselyov [33]released a new version of Takusen, a library for accessing DBMSs. The most significant code change is a new internal design, giving better separation of concerns like statement preparation, binding, and result-set processing. Takusen is now held in darcs, and [34]hosted at haskell.org 33. http://article.gmane.org/gmane.comp.lang.haskell.libraries/4887 34. http://darcs.haskell.org/takusen * Text.Regex.Lazy 0.44, 0.56, 0.66 and 0.70 . Chris Kuklewicz [35]announced [36]Text.Regex.Lazy 0.44-0.70, with many enhancements. Multiple backends are supported, in addition to the "full lazy" and the DFA backends. Text.Regex.Lazy is a replacement and enhancement for Text.Regex. More details [37]here 35. http://article.gmane.org/gmane.comp.lang.haskell.libraries/4977 36. http://sourceforge.net/projects/lazy-regex 37. http://article.gmane.org/gmane.comp.lang.haskell.libraries/5028 * Streams 0.2.1 beta . Bulat Ziganshin [38]released Streams 0.2.1 beta, featuring various bug fixes and improvements to the streams library 38. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/4865/focus=4865 Haskell' This section covers the [39]Haskell' standardisation process. * [40]Numeric Class reworking 39. http://hackage.haskell.org/trac/haskell-prime 40. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1568/focus=1568 Discussion * Package "mounting" . Sven Hallberg [41]proposed drop the assumption that Haskell modules are closed entities, and rather always consider them to be seen in the context of a particular package. 41. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/4900/focus=4900 * Cabal and DLLs . Jason Dagit [42]described how he was able to use Cabal with Visual Haskell to build Dlls in Windows. 42. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/4952/focus=4952 * Replacing GMP . Peter Tanski [43]sparked a long discussion on the merits and difficulties of replacing the GMP numerical library used by GHC and nhc98 with a library using a less restrictive license. More [44]here, [45]here and [46]here 43. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/10287/focus=10287 44. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/10324/focus=10324 45. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/10393/focus=10393 46. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/10408/focus=10408 * The cost of Integer . Serge Mechveliani [47]asked about the runtime cost of Integer, triggering an interesting discussion 47. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/10313/focus=10313 * Thread-local variables . Frederik Eaton [48]started a large discussion on the merits or otherwise of thread-local variables. 48. http://thread.gmane.org/gmane.comp.lang.haskell.general/14033/focus=14033 * Type level programming made simple . Oleg Kiselyov [49]composed a useful comparison between Prolog and type level programming in Haskell 49. http://article.gmane.org/gmane.comp.lang.haskell.cafe/13785 * IRC channel statistics . Don Stewart [50]created some graphs and analysis of activity and growth of the [51]#haskell IRC channel 50. http://article.gmane.org/gmane.comp.lang.haskell.cafe/13789 51. http://www.haskell.org/haskellwiki/IRC_channel Quotes of the Week * Dan Piponi : "Writing introductions to monads seems to have developed into an industry" * John Meacham : "I liken learning Haskell to tipping over a vending machine. You can't just push it, you gotta rock it back and forth a few times building up momentum until bam! suddenly the flash of insight hits and it all makes sense." * Andrew Bromage : "What was considered 100 milli-Olegs of type hackery five years ago is standard operating procedure th ese days" * Tim Toady : "Learning Haskell itself is easy -- I've done it several times already" * Adam : "Lisp is like Ruby with an ugly syntax, impossible stdlib, and macros that don't compensate for above shortcomings" * Lennart A : "Hbc still has some unique features, like views. That I've never used.." * Edward K : "I've been playing with type level 2s complement arithmetic" * Edwin B : "I think I'd panic if I had to write something that wasn't a compiler" * Ozone : "Our C++ guru at work is getting a bit sick of me saying: Ah, so that's like in Haskell, but not quite as elegant..." * roconnor : "Life lesson from today: 1 closure is nice, 500 000 closures sucks" * scsibug : "I could have sworn it was incorrect until it type-checked" * stepcut : "I wrote 1 + 1 in php once, and got 11 -- wasn't quite what I was hoping for" Contributing to HWN To help create new editions of this newsletter, please see the [52]contributing information. Send stories to dons at cse.unsw.edu.au . The darcs repository is available at darcs get http://www.cse.unsw.edu.au/~dons/code/hwn 52. http://haskell.org/haskellwiki/HWN