Haskell Weekly News: Issue 111 - March 28, 2009

--------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20090328 Issue 111 - March 28, 2009 --------------------------------------------------------------------------- Welcome to issue 111 of HWN, a newsletter covering developments in the [1]Haskell community. Announcements CHP package. Neil Brown [2]announced the release of version 1.2.0 of the [3]CHP library (which supports explicit message-passing concurrency in Haskell), with various bug-fixes and a new "clock" synchronisation primitive. smartword 0.0.0.5 Web based flash card for Word Smart I and II vocabularies. Ki Yung Ahn [4]announced the release of [5]smartword 0.0.0.5, a web based flash card system for Word Smart I and II, a popular book series for studying GRE vocabularies. HackMail 0.0 -- Procmail + Monads = Awesome!. Joe Fredette [6]announced his very second Hackage upload, [7]HackMail. Hackmail is a Procmail-alike, though it doesn't (yet) support procmail syntax. It dynamically loads a haskell source file and then sits as a daemon watching a directory for new emails. The source file contains a function which sorts email and delivers it to some directory. FallingBlocks 0.1. Ben Sanders [8]announced [9]fallingblocks, a Tetris clone using SDL. io-capture-0.2 capturing std(out|err) in IO action. Yusaku Hashimoto [10]announced the release of [11]io-capture 0.2, a library to capture stdout and stderr in an IO action. It exports a function capture, which takes an IO action and a String representing the entire input, and returns Strings representing the data written to stdout and stderr. wxAsteroids 1.0. Henk-Jan van Tuyl [12]announced [13]wxAsteroids, a game demonstrating the wxHaskell GUI. The votes are in!. Eelco Lempsink [14]announced that the [15]results of the Haskell logo competition are in! Congratulations to Jeff Wheeler on his winning design. Making videos of your project. Don Stewart [16]described how to create short screencasts showing off your latest awesome Haskell project. WinGhci, a GUI for GHCI on Windows. Pepe Gallardo [17]announced the first release of [18]WinGhci, a simple GUI for GHCI on Windows. It is closely based on WinHugs, and provides similar functionality. hranker: Basic utility for ranking a list of items (e.g. for the logo poll). Robin Green [19]announced [20]hranker, a command-line utility that helps the user rank a list of items (of any type implementing Show, Eq and Ord). The hope is that the code is sufficiently clear that it could also serve as an educational piece of code, especially for people wanting to learn how to use the HCL library. salvia-0.1, salvia-extras-0.1. Sebastiaan Visser [21]announced a new version of [22]Salvia, a lightweight Haskell Web Server Framework. Changes in this release include easier dependencies, some new default handler environments that simplify setting up a server application, support for keep-alive, a great deal of additional documentation, support for Windows, and various cleanup and bug fixes. Haddock 2.4.2. David Waern [23]announced a new release of [24]Haddock, the Haskell documentation tool. This is a bug fix release only, and it's the same version that will ship with GHC 6.10.2, unless any important problems are discovered before the GHC release. Because the .haddock file format has changed, links to previously installed documentation will not work when generating documentation using this version. ansi-terminal, ansi-wl-pprint - ANSI terminal support for Haskell. Max Bolingbroke [25]announced the [26]ansi-terminal and [27]ansi-wl-pprint packages, which allow Haskell programs to produce much richer console output by allowing colorisation, emboldening and so on. Both Unix-like (OS X, Linux) and Windows operating systems are supported (via a pure Haskell ANSI emulation layer for Windows). I/O library for Windows. Felix Martini [28]announced the [29]package, an I/O library for Windows using Windows API functions with I/O completion port support. The main goal of this library is to support Simon Marlow's new Handle API once he has added that to GHC. The library also has a compatibility module for socket functions from the network-bytestring package. Discussion Grouping - Map / Reduce. Günther Schmidt [30]asked about a way to lazily group an unordered list of key/value pairs, leading to some interesting solutions and discussion of preserving laziness. about Haskell code written to be "too smart". Manlio Perillo began an [31]epic discussion about Haskell coding style, idioms, pedagogy, and much, much more. Blog noise [32]Haskell news from the [33]blogosphere. * >>> : [34]I18n and Haskell. Internationalization of Haskell programs. * Holumbus: [35]Holumbus-Distribution Update. * Roman Cheplyaka: [36]Recent activity. Ongoing Hpysics development. * Jason Dagit: [37]Type-Correct Changes---A Safe Approach to Version Control Implementation. Jason is now a Master of Computer Science. * Sebastian Fischer: [38]Fair conjunction and disjunction. * Luke Palmer: [39]Certificate Design Pattern. * >>> Daniel Burrows: [40]Sometimes, tools are useful.. * GHC / OpenSPARC Project: [41]Pinning threads to cores. * Galois, Inc: [42]One Million Haskell Downloads.... * Thomas M. DuBuisson: [43]Yet another proposal for Haskell - the ever growing language. * Christopher Lane Hinson: [44]Twilight Hero. * Xmonad: [45]xmonad download statistics. * LHC Team: [46]Ease of implementation.. * Darcs: [47]darcs weekly news #22. * Well-Typed.Com: [48]Regression testing with Hackage. * Neil Mitchell: [49]Concise Generic Queries. * >>> Vo Minh Thu: [50]First stab at Template Haskell. * >>> Nax: [51]HStringTemplate. Quotes of the Week * ddarius: fmap: Because getting functions to the values is half the battle. * monochrom: Monad is about postmodernism. There are laws but no one owns them. You can interpret them any way you want. You can write about your own understanding and the meaning of your writing is not fixed. * conal: Recursion is the goto of functional programming * monochrom: "Monad is about computation." "Our company is about synergy." "iPod is about coolness." Godawful postmodernism nothingness. * olsner: nah, SkyNet is just a zygohistomorphic prepromorphism, nothing fancy * vixey: put some restriction like every token has a neighbourhood locally homeomophic to algol * gwern: Unfortunately Neo, no one can be *told* what the Monad is. About the Haskell Weekly News New editions are posted to [52]the Haskell mailing list as well as to [53]the Haskell Sequence and [54]Planet Haskell. [55]RSS is also available, and headlines appear on [56]haskell.org. To help create new editions of this newsletter, please see the information on [57]how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get [58]http://code.haskell.org/~byorgey/code/hwn/ . References 1. http://haskell.org/ 2. http://blogs.kent.ac.uk/crg-group/2009/03/chp-120-now-with-clocks/ 3. http://www.cs.kent.ac.uk/projects/ofa/chp/ 4. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55899 5. http://kyagrd.dyndns.org/~kyagrd/project/smartword/ 6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55851 7. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HackMail 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55812 9. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/fallingblocks 10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55786 11. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/io%2Dcapture 12. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55783 13. http://www.haskell.org/haskellwiki/wxAsteroids 14. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55500 15. http://www.cs.cornell.edu/w8/~andru/cgi-perl/civs/results.pl?num_winners=1&id=E_d21b0256a4fd5ed7&algorithm=beatpath 16. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55495 17. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55446 18. http://code.google.com/p/winghci/ 19. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55434 20. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hranker 21. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55424 22. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/salvia 23. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55345 24. http://www.haskell.org/haddock/ 25. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55324 26. http://batterseapower.github.com/ansi-terminal/ 27. http://batterseapower.github.com/ansi-wl-pprint/ 28. http://article.gmane.org/gmane.comp.lang.haskell.cafe/55322 29. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/winio 30. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/55579 31. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/55539 32. http://planet.haskell.org/ 33. http://haskell.org/haskellwiki/Blog_articles 34. http://progandprog.blogspot.com/2009/03/i18n-and-haskell.html 35. http://holumbus.fh-wedel.de/blog/?p=21 36. http://physics-dph.blogspot.com/2009/03/recent-activity.html 37. http://blog.codersbase.com/2009/03/25/type-correct-changes-a-safe-approach-t... 38. http://www-ps.informatik.uni-kiel.de/~sebf/projects/fair-predicates.html 39. http://lukepalmer.wordpress.com/2009/03/24/certificate-design-pattern/ 40. http://algebraicthunk.net/~dburrows/blog/entry/sometimes-tools-are-useful/ 41. http://ghcsparc.blogspot.com/2009/03/pinning-threads-to-cores.html 42. http://www.galois.com/blog/2009/03/23/one-million-haskell-downloads/ 43. http://tommd.wordpress.com/2009/03/22/yet-another-proposal-for-haskell-the-e... 44. http://blog.downstairspeople.org/2009/03/22/twilight-hero/ 45. http://xmonad.wordpress.com/2009/03/22/xmonad-download-statistics/ 46. http://lhc-compiler.blogspot.com/2009/03/ease-of-implementation.html 47. http://blog.darcs.net/2009/03/darcs-weekly-news-22.html 48. http://blog.well-typed.com/2009/03/regression-testing-with-hackage/ 49. http://neilmitchell.blogspot.com/2009/03/concise-generic-queries.html 50. http://thu.selfip.org/entry/first-stab-th.html 51. http://nax.is-a-geek.net/blog/entries/10/hstringtemplate 52. http://www.haskell.org/mailman/listinfo/haskell 53. http://sequence.complete.org/ 54. http://planet.haskell.org/ 55. http://sequence.complete.org/node/feed 56. http://haskell.org/ 57. http://haskell.org/haskellwiki/HWN 58. http://code.haskell.org/~byorgey/code/hwn/

This paper from 1994:
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.36.5611
begins point 1.1 with exactly that sentence. It doesn't seem to be
quoted there, so one can assume this is the original source of that
sentence. I'm not sure dough.
Regards
Christopher Skrzętnicki
2009/3/28 Conal Elliott
conal: Recursion is the goto of functional programming
BTW, I certainly did not mean to take credit for this wonderful quote. I don't know the origin. I first heard it from Erik Meijer.
- Conal
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

The quote has been around since at least the early 80s, but I don't
know who it's from.
2009/3/28 Krzysztof Skrzętnicki
This paper from 1994: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.36.5611 begins point 1.1 with exactly that sentence. It doesn't seem to be quoted there, so one can assume this is the original source of that sentence. I'm not sure dough.
Regards
Christopher Skrzętnicki
2009/3/28 Conal Elliott
: conal: Recursion is the goto of functional programming
BTW, I certainly did not mean to take credit for this wonderful quote. I don't know the origin. I first heard it from Erik Meijer.
- Conal
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (4)
-
Brent Yorgey
-
Conal Elliott
-
Krzysztof Skrzętnicki
-
Lennart Augustsson