[Today's hwn isue Don Stewart **20061019081201] { addfile ./archives/20061019.html addfile ./archives/20061019.txt hunk ./archives/20061019.html 1 + +Haskell Weekly News: October 19, 2006 +

Welcome to issue 45 of HWN, a weekly newsletter covering + developments in the Haskell community.

+

A big week, with a swag of new releases, including the long awaited GHC +6.6.

Announcements

+

Haskell'

This section covers the Haskell' standardisation +process.

Discussion

+

Jobs

+

Blog noise

Haskell news from the +blogosphere. +

Quotes of the Week

+

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.

+

The Haskell Weekly News is also available in Spanish +translation.

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 + http://www.cse.unsw.edu.au/~dons/code/hwn

+ hunk ./archives/20061019.txt 1 +--------------------------------------------------------------------------- +Haskell Weekly News +http://haskell.org/haskellwiki/HWN +Issue 45 - October 19, 2006 +--------------------------------------------------------------------------- + + Welcome to issue 45 of HWN, a weekly newsletter covering developments + in the Haskell community. + + A big week, with a swag of new releases, including the long awaited + GHC 6.6. + +Announcements + + * GHC version 6.6. The GHC Team [1]announced a new release of GHC! + There have been many changes since the 6.4.2 release. For details, + see [2]the release notes. Binary builds, source and packages are + all found at [3]GHC's home. + + 1. http://article.gmane.org/gmane.comp.lang.haskell.general/14367/ + 2. http://haskell.org/ghc/docs/6.6/html/users_guide/release-6-6.html + 3. http://www.haskell.org/ghc/ + + * Haddock version 0.8. Simon Marlow [4]announced Haddock 0.8, + including: cabalisation, Hoogle support, image inclusion. [5]Read + more. + + 4. http://article.gmane.org/gmane.comp.lang.haskell.general/14358/ + 5. http://www.haskell.org/haddock + + * Pugs 6.2.13 released. Audrey Tang [6]announced that after nearly + four months of development and 3400+ commits, [7]Pugs 6.2.13, the + leading Perl6 implementation written in Haskell, is now available. + + 6. http://pugs.blogs.com/pugs/2006/10/pugs_6213_relea.html + 7. http://pugscode.org/ + + * STM invariants and exceptions. Tim Harris [8]announced that new + transactional memory features have been committed to GHC. The main + change is to add support for dynamically checked data invariants + of the kind described in [9]this paper (pdf). There are two + operations: always X :: STM Bool -> STM () and alwaysSucceeds X :: + STM a -> STM (). More details in [10]here (pdf). + + 8. http://article.gmane.org/gmane.comp.lang.haskell.general/14356/ + 9. http://research.microsoft.com/~tharris/papers/2006-transact.pdf + 10. http://research.microsoft.com/~tharris/papers/2005-ppopp-composable.pdf + + * Cabal version 1.1.6 is now available. Duncan Coutts [11]announced + that [12]Cabal, the common architecture for building applications + and libraries, version 1.1.6 is now available. It is included in + GHC version 6.6. + + 11. http://article.gmane.org/gmane.comp.lang.haskell.libraries/5228/ + 12. http://haskell.org/cabal/ + + * Fun in the Afternoon: Thurs 16th Nov in Oxford. Jeremy Gibbons + [13]announced that he, Graham Hutton and Conor McBride at + Nottingham are organizing a seminar, [14]Fun in the Afternoon, on + functional programming and related topics. The idea is to have a + small number of talks as an antidote to mid-term blues, three + afternoons a year. The hope is that talks will be informal and + fun, and that there will be plenty of scope for discussion and + chat as well. Looks fun! + + 13. http://article.gmane.org/gmane.comp.lang.haskell.general/14373/ + 14. http://sneezy.cs.nott.ac.uk/fun/ + + * HC&A Call for Contributions. Andres Loeh [15]asked for + contributions towards the 11th [16]Haskell Communities & + Activities Report, a bi-annual overview of the state of Haskell as + well as Haskell-related projects of all flavours. + + 15. http://article.gmane.org/gmane.comp.lang.haskell.general/14384/ + 16. http://www.haskell.org/communities/ + + * Generic Haskell version 1.60 (Diamond). Utrecht's Generic Haskell + Team [17]announced a new release of [18]Generic Haskell, an + extension of Haskell that facilitates generic programming. Generic + Haskell includes: type-indexed values and type-indexed types. The + Generic Haskell compiler takes Generic Haskell source and produces + Haskell code. This release adds support for Generic Views. + + 17. http://article.gmane.org/gmane.comp.lang.haskell.general/14374/ + 18. http://www.generic-haskell.org/ + + * Streams 0.1 available for GHC 6.6. Bulat Ziganshin [19]announced + that the Streams 0.1 library is now compatible GHC 6.6. + + 19. http://article.gmane.org/gmane.comp.lang.haskell.general/14383/ + +Haskell' + + This section covers the [20]Haskell' standardisation process. + + * [21](Pattern) Guards in lambdas + + 20. http://hackage.haskell.org/trac/haskell-prime + 21. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1750/focus=1750 + +Discussion + + * GADT terminology. Oleg Kiselyov [22]argued that the term GADT + should be reserved for truly generalised algebraic data types, and + not just normal data types written in GADT syntax. + + 22. http://thread.gmane.org/gmane.comp.lang.haskell.general/14363/focus=14363 + + * Extended functionality for record field accessors. Henning + Thielemann [23]proposed some record system extensions. + + 23. http://article.gmane.org/gmane.comp.lang.haskell.cafe/15944/ + +Jobs + + * Senior Back-end Web Application Developer. Lime Wire. [24]PhD a + plus, extra credit for knowing Haskell. + + 24. http://www.crunchboard.com/job/1138 + +Blog noise + + [25]Haskell news from the blogosphere. + + * [26]First Steps with Haskell for Web Applications + * [27]Haskell and Personal Publishing Platform Ramblings + * [28]A type-based solution to the 'strings problem' + * [29]5 Principles For Programming + * [30]The Misguided Faith in Unit Tests + * [31]The functional language that?s right under your nose + * [32]Games, Strategies and the Self-Composition of the List Monad + * [33]Flapjax - Functional Reactive Ajax + * [34]Haskell-style parser combinators in Factor: s-expression reader + * [35]Concepts behind the C# 3.0 language + * [36]Explicit Typing, Trail Blazing, and Packrat Parsing + * [37]What is so cool about Functional Programming? + + 25. http://planet.haskell.org/ + 26. http://mult.ifario.us/articles/2006/10/11/first-steps-with-haskell-for-web-applications + 27. http://mult.ifario.us/articles/2006/10/18/more-haskell-and-personal-publishing-platform-ramblings + 28. http://blog.moertel.com/articles/2006/10/18/a-type-based-solution-to-the-strings-problem + 29. http://empathybox.com/archives/8 + 30. http://blogs.concedere.net:8080/blog/discipline/software+engineering/?permalink=The-Misguided-Faith-in-Unit-Tests.html + 31. http://www.b-list.org/weblog/2006/10/11/functional-language-s-right-under-your-nose + 32. http://sigfpe.blogspot.com/2006/10/games-strategies-and-self-composition.html + 33. http://lambda-the-ultimate.org/node/1771 + 34. http://www.bluishcoder.co.nz/2006/10/factor-parser-combinator-example.html + 35. http://www.codeproject.com/useritems/csharp3-concepts.asp + 36. http://www.knowing.net/PermaLink,guid,0cc63c2f-e167-406d-a00e-4f390e9494f6.aspx + 37. http://www.gaetanocaruana.com/2006/10/02/what-is-so-cool-about-functional-programming/ + +Quotes of the Week + + * M. David Peterson : With the help of our friendly local + ex-professors and Haskell geeks Dr. Meijer and Dr. Lämmel, I have + learned to stop worrying and love monad comprehensions + + * SamB: O(n^2) is better than O(hair-gone) + + * chessguy: I didn't think Pennsylvania had anybody cool enough to + know Haskell in it + + * int-e: What, unsafeCoerce# is kind-preserving? How boring! + + * lennart: Floating point numbers are terrible. I maintain that + before using them people should have an floating point drivers + license + + * xerox: #haskell is a good code optimizer. + + * sigfpe: Haskell is so strict about type safety that randomly + generated snippets of code that successfully typecheck are likely + to do something useful, even if you've no idea what that useful + thing is. + +About the Haskell Weekly News + + Each week, new editions are posted to [38]the Haskell mailing list as + well as to [39]the Haskell Sequence and [40]Planet Haskell. [41]RSS is + also available, and headlines appear on [42]haskell.org. + + The Haskell Weekly News is also [43]available in Spanish translation. + + To help create new editions of this newsletter, please see the + [44]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 + + 38. http://www.haskell.org/mailman/listinfo/haskell + 39. http://sequence.complete.org/ + 40. http://planet.haskell.org/ + 41. http://sequence.complete.org/node/feed + 42. http://haskell.org/ + 43. http://haskell.org/haskellwiki/HWN/es + 44. http://haskell.org/haskellwiki/HWN hunk ./content.wiki 1 -Editorial = Just "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", +Editorial = Just "A big week, with a swag of new releases, including the long awaited GHC 6.6.", hunk ./content.wiki 6 -"hinotify 0.1" -"Lennart Kolmodin" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14345/ announced] hinotify 0.1, a library to [http://www.kernel.org/pub/linux/kernel/people/rml/inotify/ 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. [http://haskell.org/~kolmodin/code/hinotify/docs/api/ API] and [http://haskell.org/~kolmodin/code/hinotify/ source].", +"GHC version 6.6" +"The GHC Team" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14367/ announced] a new release of GHC! There have been many changes since the 6.4.2 release. For details, see [http://haskell.org/ghc/docs/6.6/html/users_guide/release-6-6.html the release notes]. Binary builds, source and packages are all found at [http://www.haskell.org/ghc/ GHC's home].", hunk ./content.wiki 11 -"Monad Transformer Tutorial" -"Martin Grabmueller" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15714 published] a small tutorial on using monad transformers. In contrast to others approaches, it concentrates on using them, not on their implementation. [http://uebb.cs.tu-berlin.de/~magr/pub/Transformers.en.html PDF and Literate Haskell source available].", +"Haddock version 0.8" +"Simon Marlow" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14358/ announced] Haddock 0.8, including: cabalisation, Hoogle support, image inclusion. [http://www.haskell.org/haddock Read more.]", hunk ./content.wiki 16 -"Speaking Haskell in Spanish" -"Luis Araujo" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15713/ announced] [http://haskell.org/haskellwiki/Haskell.es a project] to make Haskell documentation more available to Spanish speakers. The idea is to [http://www.haskell.org/haskellwiki/Haskell.es collect information in Spanish] about Haskell, including news and tutorials, and to translate [http://haskell.org/haskellwiki/Special:Popularpages Haskell wiki pages].", +"Pugs 6.2.13 released" +"Audrey Tang" +"[http://pugs.blogs.com/pugs/2006/10/pugs_6213_relea.html announced] that after nearly four months of development and 3400+ commits, [http://pugscode.org Pugs] 6.2.13, the leading Perl6 implementation written in Haskell, is now available.", hunk ./content.wiki 21 -"Haskell Packages 6.6" -"Isaac Jones" -"[http://article.gmane.org/gmane.comp.lang.haskell.cabal.devel/175 announced] that the Cabal package tools for Haskell are in a good state, with almost 30 packages already in [http://hackage.haskell.org/packages/ 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!" , +"STM invariants and exceptions" +"Tim Harris" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14356/ announced] that new transactional memory features have been committed to GHC. The main change is to add support for dynamically checked data invariants of the kind described in [http://research.microsoft.com/~tharris/papers/2006-transact.pdf this paper (pdf)]. There are two operations: always X :: STM Bool -> STM () and alwaysSucceeds X :: STM a -> STM (). More details in [http://research.microsoft.com/~tharris/papers/2005-ppopp-composable.pdf here (pdf)].", hunk ./content.wiki 26 -"Cabal-1.1.6 release candidate" +"Cabal version 1.1.6 is now available" hunk ./content.wiki 28 -"[http://article.gmane.org/gmane.comp.lang.haskell.libraries/5213/ released] a tarball for the next 1.16 Cabal release candidate. Let's get this tested before GHC 6.6 arrives!", +"[http://article.gmane.org/gmane.comp.lang.haskell.libraries/5228/ announced] that [http://haskell.org/cabal/ Cabal], the common architecture for building applications and libraries, version 1.1.6 is now available. It is included in GHC version 6.6.", hunk ./content.wiki 31 -"Darcs 1.0.9 release candidate" -"Tommy Pettersson" -"[http://article.gmane.org/gmane.comp.version-control.darcs.user/10332 announced] the first release candidate for next stable [http://darcs.net 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.", +"Fun in the Afternoon: Thurs 16th Nov in Oxford" +"Jeremy Gibbons" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14373/ announced] that he, Graham Hutton and Conor McBride at Nottingham are organizing a seminar, [http://sneezy.cs.nott.ac.uk/fun/ Fun in the Afternoon], on functional programming and related topics. The idea is to have a small number of talks as an antidote to mid-term blues, three afternoons a year. The hope is that talks will be informal and fun, and that there will be plenty of scope for discussion and chat as well. Looks fun!", hunk ./content.wiki 36 -"Haskell and Vim" -"Marc Weber" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15707 wrote] some Vim scripts to ease various Haskell coding tasks in Vim." +"HC&A Call for Contributions" +"Andres Loeh" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14384/ asked] for contributions towards the 11th [http://www.haskell.org/communities/ Haskell Communities & Activities Report], a bi-annual overview of the state of Haskell as well as Haskell-related projects of all flavours.", hunk ./content.wiki 40 -], +Item +"Generic Haskell version 1.60 (Diamond)" +"Utrecht's Generic Haskell Team" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14374/ announced] a new release of [http://www.generic-haskell.org Generic Haskell], an extension of Haskell that facilitates generic programming. Generic Haskell includes: type-indexed values and type-indexed types. The Generic Haskell compiler takes Generic Haskell source and produces Haskell code. This release adds support for Generic Views.", hunk ./content.wiki 45 -HaskellPrime [ +Item +"Streams 0.1 available for GHC 6.6" +"Bulat Ziganshin" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14383/ announced] that the Streams 0.1 library is now compatible GHC 6.6." hunk ./content.wiki 50 -Link -"http://hackage.haskell.org/trac/haskell-prime/wiki/Status'" -"Status report", hunk ./content.wiki 51 -Link -"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1717/focus=1717" -"Stand-alone deriving declarations (part 1)", +], + +HaskellPrime [ hunk ./content.wiki 56 -"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1726/focus=1726" -"Stand-alone deriving declarations (part 2)" +"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1750/focus=1750" +"(Pattern) Guards in lambdas" hunk ./content.wiki 63 -[ - -Item -"APLAS'06" -"Manuel Chakravarty" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14346 announced] the call for participation [http://www.cse.unsw.edu.au/~aplas06/ 4th Asian Symposium on Programming Languages and Systems], to be held in Sydney." - - -], +[ ], hunk ./content.wiki 68 -"Allowing both prefix unary minus and right section subtraction" -"Michael Shulman" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15710/ 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.", +"GADT terminology" +"Oleg Kiselyov" +"[http://thread.gmane.org/gmane.comp.lang.haskell.general/14363/focus=14363 argued] that the term GADT should be reserved for truly generalised algebraic data types, and not just normal data types written in GADT syntax.", hunk ./content.wiki 73 -"Google Summer of Code Summit and Haskell" -"Don Stewart" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14339/ sought] feedback on this year's Google Summer of Code Haskell projects, in preparation for Haskell.org's attendance at the Google SoC Summit.", +"Extended functionality for record field accessors" +"Henning Thielemann" +"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15944/ proposed] some record system extensions." hunk ./content.wiki 77 -Item -"GHC under Wine" -"Robert Marlow" -"[http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/10857 described] his experience setting up GHC under Wine to produce Windows binaries from Linux." , +], + +Jobs [ hunk ./content.wiki 82 -"Function lists and arguments" -"Joel Koerwer" -"[http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15681/focus=15681 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. [http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15683/focus=15683 Some solutions] were suggested." +"Senior Back-end Web Application Developer" +"Lime Wire." +"[http://www.crunchboard.com/job/1138 PhD a plus, extra credit for knowing Haskell]." hunk ./content.wiki 88 -Jobs [ +Blogs [ hunk ./content.wiki 90 -Item -"Open assistant professorship at Utrecht" -"Doaitse Swierstra" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14343/ 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. [http://www.cs.uu.nl/vacatures/en/62612.html More info].", +Link +"http://mult.ifario.us/articles/2006/10/11/first-steps-with-haskell-for-web-applications" +"First Steps with Haskell for Web Applications", hunk ./content.wiki 94 -Item -"PhD studentship" -"Shengchao Qin" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14347/ 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.", +Link +"http://mult.ifario.us/articles/2006/10/18/more-haskell-and-personal-publishing-platform-ramblings" +"Haskell and Personal Publishing Platform Ramblings", hunk ./content.wiki 98 -Item -"Post-doctoral position" -"Stephan Merz" -"[http://lists.seas.upenn.edu/pipermail/types-announce/2006/000298.html announced] that applications are invited for a post-doctoral fellowship on the modeling and verification of domain-specific languages in the [http://www.loria.fr/equipes/mosel/ MOSEL] team at LORIA. The project aims to model domain-specific languages in the specification language [http://research.microsoft.com/users/lamport/tla/tla.html 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." +Link +"http://blog.moertel.com/articles/2006/10/18/a-type-based-solution-to-the-strings-problem" +"A type-based solution to the 'strings problem'", hunk ./content.wiki 102 -], +Link +"http://empathybox.com/archives/8" +"5 Principles For Programming", hunk ./content.wiki 106 -Blogs [ +Link +"http://blogs.concedere.net:8080/blog/discipline/software+engineering/?permalink=The-Misguided-Faith-in-Unit-Tests.html" +"The Misguided Faith in Unit Tests", hunk ./content.wiki 111 -"http://haskell.org/haskellwiki/Roll_your_own_IRC_bot" -"Roll your own Haskell IRC bot", +"http://www.b-list.org/weblog/2006/10/11/functional-language-s-right-under-your-nose" +"The functional language that?s right under your nose", hunk ./content.wiki 115 -"http://lukeplant.me.uk/blog.php?id=1107301643" -"Understanding Monads Via Python List Comprehensions", +"http://sigfpe.blogspot.com/2006/10/games-strategies-and-self-composition.html" +"Games, Strategies and the Self-Composition of the List Monad", hunk ./content.wiki 119 -"http://www.mercury.cs.mu.oz.au/mailing-lists/mercury-users/mercury-users.9904/0038.html" -"Mercury and imperative programming", +"http://lambda-the-ultimate.org/node/1771" +"Flapjax - Functional Reactive Ajax", hunk ./content.wiki 123 -"http://www.recursivethought.com/blog/view/languages-as-design" -"Languages as first-class design decisions", +"http://www.bluishcoder.co.nz/2006/10/factor-parser-combinator-example.html" +"Haskell-style parser combinators in Factor: s-expression reader", hunk ./content.wiki 127 -"http://jaortega.wordpress.com/2006/10/08/becoming-a-haskell-developer/" -"Becoming a Haskell developer via YHC", +"http://www.codeproject.com/useritems/csharp3-concepts.asp" +"Concepts behind the C# 3.0 language", hunk ./content.wiki 131 -"http://best-practice-software-engineering.blogspot.com/2006/10/event-jaoo-conference-day-3.html" -"JAOO Conference: Functional Programming And Monads", +"http://www.knowing.net/PermaLink,guid,0cc63c2f-e167-406d-a00e-4f390e9494f6.aspx" +"Explicit Typing, Trail Blazing, and Packrat Parsing", hunk ./content.wiki 135 -"http://compsci.ca/blog/compsci-does-functional-programming/" -"CompSci.ca does Functional Programming" +"http://www.gaetanocaruana.com/2006/10/02/what-is-so-cool-about-functional-programming/" +"What is so cool about Functional Programming?" hunk ./content.wiki 143 -"Larry Wall" -"Perl is turning into Haskell. Someone shoot me.", +"M. David Peterson " +"With the help of our friendly local ex-professors and Haskell geeks Dr. Meijer and Dr. Lämmel, I have learned to stop worrying and love monad comprehensions", hunk ./content.wiki 147 -"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.", +"SamB" +"O(n^2) is better than O(hair-gone)", hunk ./content.wiki 151 -"lispy" -"> init . map snd . filter fst . zip (fix ([True, False] ++)) . ap (zipWith (+)) tail . map length . group . fix $ show", +"chessguy" +"I didn't think Pennsylvania had anybody cool enough to know Haskell in it", hunk ./content.wiki 155 -"lambdabot" -"[2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...", +"int-e" +"What, unsafeCoerce# is kind-preserving? How boring!", hunk ./content.wiki 159 -"Verity Stob" -"Lisp is still #1 for key algorithmic techniques such as recursion and condescension.", +"lennart" +"Floating point numbers are terrible. I maintain that before using them people should have an floating point drivers license", hunk ./content.wiki 163 -"dcoutts" -"(:[]) looks like a monster", +"xerox" +"#haskell is a good code optimizer.", hunk ./content.wiki 167 -"largos" -"[on programming languages] ...and I'd rather not own as much rope as c/c++ gives you.", +"sigfpe" +"Haskell is so strict about type safety that randomly generated snippets of code that successfully typecheck are likely to do something useful, even if you've no idea what that useful thing is." hunk ./content.wiki 170 -Quote -"ozone" -"When will bytestring be O(1) for all operations?", - -Quote -"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" hunk ./content.wiki 175 -Commit -"Stand-alone deriving declarations added. bringert" -"Add [http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/17038/ 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" - hunk ./content.wiki.old 1 -Editorial = Just "This week we see a new Hugs release, and the results of the ICFP contest are out! We feature a special report on the Commercial Users of Functional Programming workshop, courtesy of John Hughes", +Editorial = Just "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", hunk ./content.wiki.old 6 -"ICFP Contest Results" -"CMU's Principles of Programming Group" -"[http://icfpcontest.org announced] the results of this year's [http://icfp06.cs.uchicago.edu/ ICFP] programming contest. Congratulations to the winning team from Google, 'Team Smartass', (Christopher Hendrie, Derek Kisman, Ambrose Feinstein and Daniel Wright), who used Haskell along with C++, Bash and Python. Haskell has now been used by the winning team three years running! An honourable mention to team Lazy Bottoms, another Haskell team, who managed to crack several of the puzzles first. Five teams from the [http://haskell.org/haskellwiki/IRC_channel #haskell IRC channel] were [http://icfpcontest.org/scoreboard.shtml placed] in the top 50. A video stream of the results announcement is [http://video.google.com/videoplay?docid=6419094369756184531 available], shot and cut by Malcolm Wallace. Many thanks to the [http://www.cs.cmu.edu/afs/cs/Web/Groups/pop/pop.html CMU team] for organising such a great contest!", +"hinotify 0.1" +"Lennart Kolmodin" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14345/ announced] hinotify 0.1, a library to [http://www.kernel.org/pub/linux/kernel/people/rml/inotify/ 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. [http://haskell.org/~kolmodin/code/hinotify/docs/api/ API] and [http://haskell.org/~kolmodin/code/hinotify/ source].", hunk ./content.wiki.old 11 -"New release of Hugs" -"Ross Paterson" -"[http://article.gmane.org/gmane.comp.lang.haskell.hugs.user/493/ announced] a new minor release of Hugs, fixing a few bugs with the May 2006 release, and with libraries roughly matching the forthcoming GHC 6.6 release. It is available from [http://www.haskell.org/hugs/ the Hugs page].", +"Monad Transformer Tutorial" +"Martin Grabmueller" +"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15714 published] a small tutorial on using monad transformers. In contrast to others approaches, it concentrates on using them, not on their implementation. [http://uebb.cs.tu-berlin.de/~magr/pub/Transformers.en.html PDF and Literate Haskell source available].", hunk ./content.wiki.old 16 -"HAppS version 0.8.2" -"Einar Karttunen" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14292/ announced] the release of the Haskell Application Server version 0.8.2. HAppS is a Haskell web application server for building industrial strength internet applications safely, quickly, and easily. With HAppS you focus entirely on application functionality implemented in your favourite language and you don't have to worry about making sure all sorts of server subsystems are functioning properly. [http://happs.org/ More info].", +"Speaking Haskell in Spanish" +"Luis Araujo" +"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15713/ announced] [http://haskell.org/haskellwiki/Haskell.es a project] to make Haskell documentation more available to Spanish speakers. The idea is to [http://www.haskell.org/haskellwiki/Haskell.es collect information in Spanish] about Haskell, including news and tutorials, and to translate [http://haskell.org/haskellwiki/Special:Popularpages Haskell wiki pages].", hunk ./content.wiki.old 21 -"Codec.Compression.GZip and .BZip" -"Duncan Coutts" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14265/ released] two new packages: zlib and bzlib, which provide functions for compression and decompression in the gzip and bzip2 formats, directly on [http://www.cse.unsw.edu.au/~dons/fps.html ByteStrings]. Both provide pure functions on streams of data represented by lazy ByteStrings. This makes it easy to use either in memory or with disk or network IO. There is API documentation is available [http://haskell.org/~duncan/zlib/docs here] and [http://haskell.org/~duncan/bzlib/docs here].", +"Haskell Packages 6.6" +"Isaac Jones" +"[http://article.gmane.org/gmane.comp.lang.haskell.cabal.devel/175 announced] that the Cabal package tools for Haskell are in a good state, with almost 30 packages already in [http://hackage.haskell.org/packages/ 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!" , hunk ./content.wiki.old 26 -"System Fc branch merged into GHC" -"Manuel Chakravarty" -"[http://article.gmane.org/gmane.comp.lang.haskell.cvs.all/28297/ merged] the [http://www.cse.unsw.edu.au/~chak/papers/SCP06.html System Fc] branch of GHC into GHC head. This is a significant development, adding extensions to GHC to support an [http://hackage.haskell.org/trac/ghc/wiki/IntermediateTypes FC-based intermediate language], a new implementation of GADTs, along with indexed data types and indexed newtypes (generalised [http://www.cse.unsw.edu.au/~chak/papers/CKPM05.html associated data types]). [http://hackage.haskell.org/trac/ghc/wiki/TypeFunctions More details] about the implementation.", +"Cabal-1.1.6 release candidate" +"Duncan Coutts" +"[http://article.gmane.org/gmane.comp.lang.haskell.libraries/5213/ released] a tarball for the next 1.16 Cabal release candidate. Let's get this tested before GHC 6.6 arrives!", hunk ./content.wiki.old 31 -"Job writing security software in Haskell" -"Andrew Pimlott" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15439/ announced] that Planning Systems, Inc. has a job opportunity for Haskell programmers, writing a high-assurance authorization system. [http://www.plansys.com/careers/job_details.cfm?JobID=28 Job description].", +"Darcs 1.0.9 release candidate" +"Tommy Pettersson" +"[http://article.gmane.org/gmane.comp.version-control.darcs.user/10332 announced] the first release candidate for next stable [http://darcs.net 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.", hunk ./content.wiki.old 36 -"Dr Haskell 0.1" -"Neil Mitchell" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14285/ released] Dr Haskell, a tool to help suggest improvements to your Haskell code. Dr Haskell will analyse your code, and suggest shorter alternatives for rewriting. [http://www-users.cs.york.ac.uk/~ndm/projects/drhaskell.php More details].", +"Haskell and Vim" +"Marc Weber" +"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15707 wrote] some Vim scripts to ease various Haskell coding tasks in Vim." hunk ./content.wiki.old 40 -Item -"BitSyntax for Haskell" -"Adam Langley" -"[http://article.gmane.org/gmane.comp.lang.haskell.general/14287/ released] a [http://www.imperialviolet.org/binary/bitsyntax/ bit syntax library] for Haskell, based on Erlang's [http://www.erlang.org/doc/doc-5.4.12/doc/programming_examples/bit_syntax.html bit syntax] (great for building and breaking up binary structures). Nice!", +], hunk ./content.wiki.old 42 -Item -"File fuzzing" -"Tim Newsham" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15386/ made available] FileH, a Haskell tool for generating test data via random file mutation. [http://www.isecpartners.com/file_fuzzers.html More details].", +HaskellPrime [ hunk ./content.wiki.old 44 -Item -"A DSL for state machines" -"Stephane Bortzmeyer" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15116/ announced] a Haskell implementation of a proposal to the IETF to standardize [http://www.cosmogol.fr/ a language] used for finite state machines (which are common in IETF standards). The reference implementation is [http://www.cosmogol.fr/shadok.html available].", +Link +"http://hackage.haskell.org/trac/haskell-prime/wiki/Status'" +"Status report", hunk ./content.wiki.old 48 -Item -"A language tag parser" -"Stephane Bortzmeyer" -"announced [http://www.bortzmeyer.org/gabuzomeu-parsing-language-tags.html GaBuZoMeu], a set of programs to parse and check [http://www.iana.org/assignments/language-subtag-registry language tags] (see RFC 4646 produced by the IETF Working Group LTRU - Language Tag Registry Update)." +Link +"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1717/focus=1717" +"Stand-alone deriving declarations (part 1)", + +Link +"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1726/focus=1726" +"Stand-alone deriving declarations (part 2)" hunk ./content.wiki.old 58 -HaskellPrime [ +Conferences +Nothing +[ + +Item +"APLAS'06" +"Manuel Chakravarty" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14346 announced] the call for participation [http://www.cse.unsw.edu.au/~aplas06/ 4th Asian Symposium on Programming Languages and Systems], to be held in Sydney." hunk ./content.wiki.old 67 -Link -"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1658/focus=1658" -"\'Here\' documents" hunk ./content.wiki.old 70 -Conferences -(Just -"The [http://www.galois.com/cufp/ Commercial Users of Functional Programming workshop] (CUFP), held in association with [http://www.cs.luc.edu/icfp/ ICFP], attracted a record turn-out this year. 57 attendees came to listen to 9 speakers talk about commercial uses of Scheme, Erlang, Reflect, OCaml, and Haskell. Four of the speakers talked about applications of Haskell. " ) -[ +Discussion [ hunk ./content.wiki.old 73 -"Linspire in Haskell" -"Clifford Beshers" -"talked about the adoption of Haskell at [http://www.linspire.com/ Linspire]. Linspire switched recently from OCaml to Haskell, citing readability, classes, the IO monad, and more complete libraries as reasons. So far CGI scripts and a package autobuilder have been implemented in Haskell. Static typing, and the use of purely functional data structures on disk, have helped make for reliable code. Performance has been generally good, although Parsec parsers proved to be slow on larger files--a problem that was solved using Data.ByteString. Space leaks have not been a problem, perhaps because frequent IO keeps programs strict. Belying the myth that functional programmers are hard to recruit, Linspire's announcement that they were adopting Haskell generated several resumes, despite explicitly stating that they were not recruiting.", +"Allowing both prefix unary minus and right section subtraction" +"Michael Shulman" +"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15710/ 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.", hunk ./content.wiki.old 78 -"Haskell programming at Credit Suisse" -"Howard Mansell" -"talked about Haskell programming at [http://www.credit-suisse.com/ Credit Suisse] in New York. This group's business is derivative trading for clients. Valuing complex derivatives is computationally costly, requiring nightly runs on thousands of CPUs. There is a real competitive advantage in being able to build models quickly, since some exotic derivatives may only be traded 10-100 times in total. Previously models were built using Excel, with heavy computations delegated to C++ plugins. Most of the Excel code has now been replaced by Haskell, with Excel just providing the user interface (which in turn is generated by DSELs). The work has been done by [http://www.cs.chalmers.se/~augustss/ Lennart Augustsson] and [http://www.cse.unsw.edu.au/~keller Gabriele Keller], but Credit Suisse needs more Haskell programmers -- they're hiring.", +"Google Summer of Code Summit and Haskell" +"Don Stewart" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14339/ sought] feedback on this year's Google Summer of Code Haskell projects, in preparation for Haskell.org's attendance at the Google SoC Summit.", hunk ./content.wiki.old 83 -"Hardware design at Bluespec Inc." -"Rishiyur Nikhil" -"talked about [http://www.bluespec.com/ Bluespec Inc], which offers System Verilog tools implemented in about 90K loc of Haskell. Bluespec's tools are based on MIT research in the 90s into generating hardware from term rewriting systems; using Bluespec's \'rules\' complex hardware can be described at a high level, improving productivity and reducing errors. Selling the tools based on Haskell requires short, punchy examples to convince old hands that there is a better way than writing RTL by hand. Bluespec have started sales, and many more trials are under way.", +"GHC under Wine" +"Robert Marlow" +"[http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/10857 described] his experience setting up GHC under Wine to produce Windows binaries from Linux." , hunk ./content.wiki.old 88 -"Aetion, AI and Haskell" -"Garret Morris" -"talked about Haskell applications at [http://www.aetion.com Aetion], which is a defence contractor offering AI applications based on Bayesian nets. Rapidly changing priorities make it important to minimize the code impact of changes, which suits Haskell well. Aetion have developed three main projects in Haskell, all successful. Haskell's concise code was perhaps most important for rewriting: it made it practicable to throw away old code occasionally. DSELs allowed the AI to be specified very declaratively. Less successful was the decision to link Haskell to a GUI in Java: the need to serialize data made it impossible to use functions as representations, which was unfortunate. Other issues included getting libraries to work together, patchy Windows support, and a need for more debugging tools." +"Function lists and arguments" +"Joel Koerwer" +"[http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15681/focus=15681 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. [http://thread.gmane.org/gmane.comp.lang.haskell.cafe/15683/focus=15683 Some solutions] were suggested." hunk ./content.wiki.old 94 -Discussion [ +Jobs [ hunk ./content.wiki.old 97 -"Curious Functor class" -"Ashley Yakeley" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15447/ described] the curious class of functors for which foralls can move across.", - -Item -"Variadic functions and typeCast" -"Michael Shulman" -"[http://article.gmane.org/gmane.comp.lang.haskell.cafe/15401/ submitted] a general version of the trick to implement variadic functions in Haskell [http://okmij.org/ftp/Haskell/vararg-fn.lhs outlined by Oleg]", +"Open assistant professorship at Utrecht" +"Doaitse Swierstra" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14343/ 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. [http://www.cs.uu.nl/vacatures/en/62612.html More info].", hunk ./content.wiki.old 102 -"Serialising existential types" -"Misha Aizatulin" -"[http://thread.gmane.org/gmane.comp.lang.haskell.general/14260/focus=14260 pondered] the interesting problem of serialisation of datatypes with existential constructors. Several options were suggested.", +"PhD studentship" +"Shengchao Qin" +"[http://article.gmane.org/gmane.comp.lang.haskell.general/14347/ 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.", hunk ./content.wiki.old 107 -"Replacing GMP" -"Peter Tanski" -"[http://article.gmane.org/gmane.comp.lang.haskell.glasgow.user/10746 updated] the [http://hackage.haskell.org/trac/ghc/wiki/ReplacingGMPNotes page] relating to portably replacing GMP in GHC (and other Haskell systems)" +"Post-doctoral position" +"Stephan Merz" +"[http://lists.seas.upenn.edu/pipermail/types-announce/2006/000298.html announced] that applications are invited for a post-doctoral fellowship on the modeling and verification of domain-specific languages in the [http://www.loria.fr/equipes/mosel/ MOSEL] team at LORIA. The project aims to model domain-specific languages in the specification language [http://research.microsoft.com/users/lamport/tla/tla.html 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." hunk ./content.wiki.old 116 -"http://www.regdeveloper.co.uk/2006/09/22/cplusplus-lambda-future/" -"Lambda abstractions to be added to C++", +"http://haskell.org/haskellwiki/Roll_your_own_IRC_bot" +"Roll your own Haskell IRC bot", hunk ./content.wiki.old 120 -"http://cwilliams.textdriven.com/articles/2006/08/29/haskell-in-ruby" -"Haskell in Ruby: a Ruby Prelude", +"http://lukeplant.me.uk/blog.php?id=1107301643" +"Understanding Monads Via Python List Comprehensions", hunk ./content.wiki.old 124 -"http://googleresearch.blogspot.com/2006/09/and-awards-go-to.html" -"Google Research announcement of their ICFP teams' results", +"http://www.mercury.cs.mu.oz.au/mailing-lists/mercury-users/mercury-users.9904/0038.html" +"Mercury and imperative programming", hunk ./content.wiki.old 128 -"http://blog.interlinked.org/programming/icfp.html" -"Some analysis of previous ICFP contest results", +"http://www.recursivethought.com/blog/view/languages-as-design" +"Languages as first-class design decisions", hunk ./content.wiki.old 132 -"http://haskell.org/haskellwiki/Simple_unix_tools" -"Simple unix tools in Haskell", +"http://jaortega.wordpress.com/2006/10/08/becoming-a-haskell-developer/" +"Becoming a Haskell developer via YHC", hunk ./content.wiki.old 136 -"http://www.kdedevelopers.org/node/2024" -"Bazaar vs Darcs", +"http://best-practice-software-engineering.blogspot.com/2006/10/event-jaoo-conference-day-3.html" +"JAOO Conference: Functional Programming And Monads", hunk ./content.wiki.old 140 -"http://mark.stosberg.com/Tech/darcs/cvs_switch/easier.html" -"CVS vs Darcs", - -Link -"http://yarivsblog.com/articles/2006/09/01/oo-fp-erlang-and-me" -"Adventures in Open Source Erlang", - -Link -"http://ifacethoughts.net/2006/09/25/is-functional-programming-going-mainstream/" -"Is functional programming going mainstream?" +"http://compsci.ca/blog/compsci-does-functional-programming/" +"CompSci.ca does Functional Programming" hunk ./content.wiki.old 148 -"Clifford Beshers" -"When we code in Haskell, we go home on time", - -Quote -"Bulat" -"There is new Time library, which is supposed to replace old System.Time. We hope that it will happen before 2038", - -Quote -"edwardk" -"I should probably just type up the problem specification in Haskell and click compile. Funny how that seems to yield the answer", - -Quote -"vincenz" -"OCaml used to be pretty, Haskell made it ugly", +"Larry Wall" +"Perl is turning into Haskell. Someone shoot me.", hunk ./content.wiki.old 152 -"glguy" -"I remember what class I was in when I was reading Hudak's book and discovered `fix'. Life altering...", +"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.", hunk ./content.wiki.old 156 -"glguy" -"> take 10 $ map length $ fix (([()]:).scanl (++) [()])", +"lispy" +"> init . map snd . filter fst . zip (fix ([True, False] ++)) . ap (zipWith (+)) tail . map length . group . fix $ show", hunk ./content.wiki.old 161 -"[1,1,2,3,5,8,13,21,34,55]", +"[2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...", hunk ./content.wiki.old 164 -"agentzh" -"Haskell is really a powerful weapon", +"Verity Stob" +"Lisp is still #1 for key algorithmic techniques such as recursion and condescension.", hunk ./content.wiki.old 168 -"gaal" -"You know you've been reading lots of Haskell papers when... someone says '(bbiab, $job)' and you try mentally to run :t on that", +"dcoutts" +"(:[]) looks like a monster", hunk ./content.wiki.old 172 -"audreyt" -"Pugs seems to be just my excuse to apply each and every technique from the GHC changelogs...", +"largos" +"[on programming languages] ...and I'd rather not own as much rope as c/c++ gives you.", hunk ./content.wiki.old 176 -"Pseudonym" -"[OlegFacts] Oleg solves N P-hard problems in N log N time... in the type system", +"ozone" +"When will bytestring be O(1) for all operations?", hunk ./content.wiki.old 180 -"dons" -"[On improving Cabal dependency handling] fps 0.8 is an exemplary instance of part number fps 0.8. Interestingly, this one is lavender. Also, it is broken: it is (a fps 0.8 missing a base 1.0).", +"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" hunk ./content.wiki.old 183 -Quote -"Mark Bessey" -"When really massively-parallel systems start to become more common, the programming model will have -to change. What languages you'll likely use to program these beasts is an interesting question - most likely, it'll be a functional language, something like Haskell, or Erlang.", - -Quote -"Philippa" -"[vincenz] Forget theory, it's about pragmatics [Philippa] we're talking FP, they tend to be the same thing" +], hunk ./content.wiki.old 185 +Commits [ hunk ./content.wiki.old 187 -], +Commit +"Stand-alone deriving declarations added. bringert" +"Add [http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/17038/ 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" hunk ./content.wiki.old 191 -Commits [] +] hunk ./issue 1 -Issue 45 +Issue 46 hunk ./utils/publish.hs 153 + p ( text "The Haskell Weekly News is also" <+> + ppr Html (Link "http://haskell.org/haskellwiki/HWN/es" "available") <+> + text "in Spanish translation." ) $$ + hunk ./utils/publish.hs 217 - text "Haskell news from the blogosphere." $$ + a "http://planet.haskell.org" "Haskell news" <+> text "from the blogosphere." $$ hunk ./wiki/News.html 1 -''2006-10-10'' +''2006-10-19'' hunk ./wiki/News.html 3 - hunk ./wiki/Old_news.html 4 + +''2006-10-10'' + + }