--------------------------------------------------------------------------- Haskell Weekly News http://haskell.org/haskellwiki/HWN Issue 44 - October 10, 2006 --------------------------------------------------------------------------- Welcome to issue 44 of HWN, a weekly newsletter covering developments in the Haskell community. Developments this week include Lennart Kolmodin's new inotify bindings for Haskell, work begins on Spanish translations of Haskell literature, and new versions of Darcs and Cabal are tagged Announcements * hinotify 0.1. Lennart Kolmodin [1]announced hinotify 0.1, a library to [2]inotify which has been part of the Linux kernel since 2.6.13. inotify provides file system event notification, simply add a watcher to a file or directory and get an event when it is accessed or modified. [3]API and [4]source. 1. http://article.gmane.org/gmane.comp.lang.haskell.general/14345/ 2. http://www.kernel.org/pub/linux/kernel/people/rml/inotify/ 3. http://haskell.org/~kolmodin/code/hinotify/docs/api/ 4. http://haskell.org/~kolmodin/code/hinotify/ * Monad Transformer Tutorial. Martin Grabmueller [5]published a small tutorial on using monad transformers. In contrast to others approaches, it concentrates on using them, not on their implementation. [6]PDF and Literate Haskell source available. 5. http://article.gmane.org/gmane.comp.lang.haskell.cafe/15714 6. http://uebb.cs.tu-berlin.de/~magr/pub/Transformers.en.html * Speaking Haskell in Spanish. Luis Araujo [7]announced [8]a project to make Haskell documentation more available to Spanish speakers. The idea is to [9]collect information in Spanish about Haskell, including news and tutorials, and to translate [10]Haskell wiki pages. 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/15713/ 8. http://haskell.org/haskellwiki/Haskell.es 9. http://www.haskell.org/haskellwiki/Haskell.es 10. http://haskell.org/haskellwiki/Special:Popularpages * Haskell Packages 6.6. Isaac Jones [11]announced that the Cabal package tools for Haskell are in a good state, with almost 30 packages already in [12]the database. Time to start testing packages, starting with the cabal release candidate that'll go into GHC 6.6, to make sure they work nicely together! 11. http://article.gmane.org/gmane.comp.lang.haskell.cabal.devel/175 12. http://hackage.haskell.org/packages/ * Cabal-1.1.6 release candidate. Duncan Coutts [13]released a tarball for the next 1.16 Cabal release candidate. Let's get this tested before GHC 6.6 arrives! 13. http://article.gmane.org/gmane.comp.lang.haskell.libraries/5213/ * Darcs 1.0.9 release candidate. Tommy Pettersson [14]announced the first release candidate for next stable [15]darcs, 1.0.9rc1. This will mainly be a bug fix version to get things right that got wrong or didn't get right in 1.0.7 and 1.0.8, but there are some new features and optimizations too. 14. http://article.gmane.org/gmane.comp.version-control.darcs.user/10332 15. http://darcs.net/ * Haskell and Vim. Marc Weber [16]wrote some Vim scripts to ease various Haskell coding tasks in Vim. 16. http://article.gmane.org/gmane.comp.lang.haskell.cafe/15707 Haskell' This section covers the [17]Haskell' standardisation process. * [18]Status report * [19]Stand-alone deriving declarations (part 1) * [20]Stand-alone deriving declarations (part 2) 17. http://hackage.haskell.org/trac/haskell-prime 18. http://hackage.haskell.org/trac/haskell-prime/wiki/Status' 19. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1717/focus=1717 20. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1726/focus=1726 Discussion * Allowing both prefix unary minus and right section subtraction. Michael Shulman [21]described a technique for writing operators that can be used both as infix or postfix operators, using the new postfix support in GHC 6.6. 21. http://article.gmane.org/gmane.comp.lang.haskell.cafe/15710/ * Google Summer of Code Summit and Haskell. Don Stewart [22]sought feedback on this year's Google Summer of Code Haskell projects, in preparation for Haskell.org's attendance at the Google SoC Summit. 22. http://article.gmane.org/gmane.comp.lang.haskell.general/14339/ * GHC under Wine. Robert Marlow [23]described his experience setting up GHC under Wine to produce Windows binaries from Linux. 23. http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/10857 * Function lists and arguments. Joel Koerwer [24]described a puzzle to try to apply a function of type a function of type (a -> a -> ... -> a -> a), to a list of arguments of the same length. [25]Some solutions were suggested. 24. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15681/focus=15681 25. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15683/focus=15683 Conference roundup * APLAS'06. Manuel Chakravarty [26]announced the call for participation [27]4th Asian Symposium on Programming Languages and Systems, to be held in Sydney. 26. http://article.gmane.org/gmane.comp.lang.haskell.general/14346 27. http://www.cse.unsw.edu.au/~aplas06/ Jobs * Open assistant professorship at Utrecht. Doaitse Swierstra [28]announced a 5 year position for an assistant professor at Utrecht. Current areas of interest include: domain specific embedded languages, programming language design and implementation, generic programming, program verification, advanced type systems. [29]More info. 28. http://article.gmane.org/gmane.comp.lang.haskell.general/14343/ 29. http://www.cs.uu.nl/vacatures/en/62612.html * PhD studentship. Shengchao Qin [30]announced that applications are invited for a PhD student to work on resource analysis and verification for dependable embedded software, at the University of Durham. The successful applicant should have a good background in program analysis, type systems and type theory, software verification and embedded systems. 30. http://article.gmane.org/gmane.comp.lang.haskell.general/14347/ * Post-doctoral position. Stephan Merz [31]announced that applications are invited for a post-doctoral fellowship on the modeling and verification of domain-specific languages in the [32]MOSEL team at LORIA. The project aims to model domain-specific languages in the specification language [33]TLA+ and to develop verification techniques for programs written in DSLs against high-level correctness properties. Candidates must hold a PhD and should have demonstrated research interest in formal methods and formal reasoning. They should preferably have experience with interactive proof assistants. 31. http://lists.seas.upenn.edu/pipermail/types-announce/2006/000298.html 32. http://www.loria.fr/equipes/mosel/ 33. http://research.microsoft.com/users/lamport/tla/tla.html Blog noise Haskell news from the blogosphere. * [34]Roll your own Haskell IRC bot * [35]Understanding Monads Via Python List Comprehensions * [36]Mercury and imperative programming * [37]Languages as first-class design decisions * [38]Becoming a Haskell developer via YHC * [39]JAOO Conference: Functional Programming And Monads * [40]CompSci.ca does Functional Programming 34. http://haskell.org/haskellwiki/Roll_your_own_IRC_bot 35. http://lukeplant.me.uk/blog.php?id=1107301643 36. http://www.mercury.cs.mu.oz.au/mailing-lists/mercury-users/mercury-users.9904/0038.html 37. http://www.recursivethought.com/blog/view/languages-as-design 38. http://jaortega.wordpress.com/2006/10/08/becoming-a-haskell-developer/ 39. http://best-practice-software-engineering.blogspot.com/2006/10/event-jaoo-conference-day-3.html 40. http://compsci.ca/blog/compsci-does-functional-programming/ Quotes of the Week * Larry Wall: Perl is turning into Haskell. Someone shoot me. * Tim Berners-Lee [and the w3c]: Functional languages such as Haskell ... facilitate the creation of programs that may be easier to analyze than their imperative equivalents. * lispy: > init . map snd . filter fst . zip (fix ([True, False] ++)) . ap (zipWith (+)) tail . map length . group . fix $ show * lambdabot: [2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536, 131072,... * Verity Stob: Lisp is still #1 for key algorithmic techniques such as recursion and condescension. * dcoutts: (:[]) looks like a monster * largos: [on programming languages] ...and I'd rather not own as much rope as c/c++ gives you. * ozone: When will bytestring be O(1) for all operations? * skew: [Monads are] just like the sequences of statements in other languages. Except very rarely have they thought so deeply about what that sequencing means Code Watch * Stand-alone deriving declarations added. bringert. Add [41]support for stand-alone 'deriving' declarations. The main motivation for this is to allow you to use the instance deriving mechanism for data types and newtypes declared in other modules, for example if you want to use generics with existing code that does not derive Typeable and Data, or want to use Show for debugging. The syntax is: deriving Class for Type, and for multi-parameter type classes:: deriving (Class t1 ... tn) for Type 41. http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/17038/ About the Haskell Weekly News Each week, new editions are posted to [42]the Haskell mailing list as well as to [43]the Haskell Sequence and [44]Planet Haskell. [45]RSS is also available, and headlines appear on [46]haskell.org. To help create new editions of this newsletter, please see the [47]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 42. http://www.haskell.org/mailman/listinfo/haskell 43. http://sequence.complete.org/ 44. http://planet.haskell.org/ 45. http://sequence.complete.org/node/feed 46. http://haskell.org/ 47. http://haskell.org/haskellwiki/HWN