--------------------------------------------------------------------------- Haskell Weekly News http://haskell.org/haskellwiki/HWN Issue 48 - November 08, 2006 --------------------------------------------------------------------------- Welcome to issue 48 of HWN, a weekly newsletter covering developments in the Haskell community. Announcements * SmallCheck 0.2. Colin Runciman [1]announced that SmallCheck 0.2, a lightweight testing library for Haskell, is out, and can be [2]obtained. Since version 0.1: there's now a choice of interactive or non-interactive test-drivers using iterative deepening; more pre-defined test-data generators, including revised Int, Integer, Float, Double, Nat and Natural and additional examples. SmallCheck is similar to QuickCheck but instead of testing for a sample of randomly generated values, SmallCheck tests properties for all the finitely many values up to some depth, progressively increasing the depth used. 1. http://article.gmane.org/gmane.comp.lang.haskell.general/14461 2. http://www.cs.york.ac.uk/fp/smallcheck0.2.tar * Hoogle Command Line 3 Beta. Neil Mitchell [3]released Hoogle Command Line version 3 Beta, an alternative to [4]the Hoogle website. Hoogle lets you search for Haskell functions by name and by type signature. 3. http://article.gmane.org/gmane.comp.lang.haskell.general/14464 4. http://haskell.org/hoogle * The Monad.Reader. Wouter Swierstra [5]issued a call for submissions for articles for the next issue of [6]The Monad.Reader. There are a large number of conferences and journals that accept research papers related to Haskell; unfortunately, the platform for non-academic publications is far less developed. This is where The Monad.Reader fits in. So if you are tossing around some ideas, write it up, and submit! Deadline for submissions is January 19th, 2007. 5. http://article.gmane.org/gmane.comp.lang.haskell.general/14449 6. http://www.haskell.org/haskellwiki/TheMonadReader * Haskell Communities and Activities Report. Andres Loeh [7]reminded us that the deadline for the November 2006 edition of the Haskell Communities and Activities Report is now! -- there may still be just 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. For more info see [8]the call for contributions. 7. http://article.gmane.org/gmane.comp.lang.haskell.general/14453 8. http://www.haskell.org/pipermail/haskell/2006-October/018646.html * HsMan. Frederik Eaton [9]announced hsman, a tool that indexes Haddock-generated HTML files, and allows users to search for functions and also GHC manual topics. 9. http://thread.gmane.org/gmane.comp.lang.haskell.glasgow.user/11153/focus=11153 * HaL, Haskell meeting in Leipzig. Johannes Waldmann [10]announced that a local Haskell meeting is to take place on December 5th in Leipzig, Germany. The meeting will be hosted by IBA Consulting. It will be quite informal, with some very short talks (most probably in German). Interessenten sind herzlich eingeladen. [11]Details and (free) registration. 10. http://article.gmane.org/gmane.comp.lang.haskell.general/14454 11. http://iba-cg.de/haskell.html Haskell' This section covers the [12]Haskell' standardisation process. * [13]Introduce lambda-match (explicit match failure and fall-through) * [14]Importing and exporting instance declarations * [15]Patches! 12. http://hackage.haskell.org/trac/haskell-prime 13. http://article.gmane.org/gmane.comp.lang.haskell.prime/1847 14. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1835/focus=1835 15. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1850/focus=1850 Libraries This week's proposals and extensions to the [16]standard libraries. * [17]unsafeShift operations for Data.Bits * [18]map* for Data.List * [19](*) `on` f = \x y -> f x * f y * [20]forkChild, waitForChild, parIO, timeout * [21]isLeft and isRight 16. http://haskell.org/haskellwiki/Library_submissions 17. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/5569/focus=5569 18. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/5552/focus=5552 19. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/5519/focus=5519 20. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/5488/focus=5488 21. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/5461/focus=5461 Discussion * The OI comonad. Sven Biedermann [22]invoked a discussion about the OI [23]comonad, and provided an example of a simple OI-comonad for stdin/stdout only, that preserves referential integrity. 22. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/16278/focus=16278 23. http://www.haskell.org/haskellwiki/Research_papers/Monads_and_arrows#Comonads * The Bits between the Lambdas. Nuno Pinto [24]asked about Binary IO in Haskell. Several solutions were suggested. 24. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/16245/focus=16245 * Translating Haskell to VHDL. Alfonso Acosta [25]pondered how to write a translator from [26]Haskell to VHDL. 25. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/16337/focus=16337 26. http://haskell.org/haskellwiki/Research_papers/Domain_specific_languages#Hardware_design * New maintainers for wxHaskell. Jeremy O'Donoghue [27]announced that a new team of maintainers in place for wxHaskell, so we're hoping that will see a significant increase in wxHaskell activtiy in the future. Great! 27. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/16364/focus=16364 * Permutation with k levels. Nuno Pinto [28]wondered about generic permute algorithms in Haskell. 28. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/16365/focus=16365 Blog noise [29]Haskell news from the blogosphere. * [30]Introductory Haskell: Solving the Sorting-It-Out Kata * [31]Writing A Lisp Interpreter In Haskell * [32]Standardising Concurrency in C++ * [33]Living with a ghost: concurrency and state * [34]Concatenative programming in Haskell's Arrows * [35]Functional programming is functional * [36]LaTeX YAHT on darcs.haskell.org * [37]My next programming language * [38]Haskell Bowling * [39]Variable substitution gives a ... monad * [40]Modeling the Semantics of Geographic Categories through Conceptual Integration (in Haskell) * [41]Keeping it simple * [42]In the beginning... * [43]Testing ... testing ... * [44]Livecoding music with Haskell * [45]Why I recommend Haskell * [46]Win for Type Theory? * [47]That problem when the ideas come too thick and fast 29. http://planet.haskell.org/ 30. http://blog.moertel.com/articles/2006/10/31/introductory-haskell-solving-the-sorting-it-out-kata 31. http://www.defmacro.org/ramblings/lisp-in-haskell.html 32. http://www.artima.com/cppsource/threads_meeting.html 33. http://damienkatz.net/2006/10/living_with_a_g_1.html 34. http://kpreid.livejournal.com/7351.html 35. http://gearon.blogspot.com/2006/10/functional-programming-is-functional.html 36. http://koweycode.blogspot.com/2006/11/yaht-on-darcshaskellorg.html 37. http://khigia.wordpress.com/2006/11/02/what-is-my-next-programming-language/ 38. http://www.xprogramming.com/xpmag/dbcHaskellBowling.htm 39. http://sigfpe.blogspot.com/2006/11/variable-substitution-gives.html 40. http://virginia-gis.spaces.live.com/Blog/cns!45E7F65393A53E20!117.entry 41. http://vastusutra.blogspot.com/2006/10/keeping-it-simple.html 42. http://samplerate.blogspot.com/2006/11/in-beginning.html 43. http://chiralos.blogspot.com/2006/11/testing-testing.html 44. http://doc.gold.ac.uk/~ma503am/alex/haskellmusic 45. http://lambda-the-ultimate.org/node/1807#comment-22019 46. http://nolacoaster.livejournal.com/20789.html 47. http://brokenhut.livejournal.com/176006.html Quotes of the Week * coffeemug: There don't seem to be any definitive sources that suggest Haskell isn't good at something. * stevan: Haskell is like all the other functional languages I have read about, but totally different at the same time * coffeemug: you can do more with Haskell in less code that's easier to read and maintain in the long run * Jeannette Wing: Computational thinking will have become ingrained in everyone's lives when ... trees are drawn upside down * monochrom: recursive directory search is an alpha-beta with boring values of alpha and beta * skew: Types are largely about writing down the contract of a function once and telling the compiler to keep track of things, rather than trying to get it all straight yourself, and being rewarded with bugs that only manifest during demos... * monochrom: They say Mozarts Mass in C minor K427 is uplifting. I'm going to name my next monad transformer or arrow transformer MozartMassInCMinorK427T * Ron Jeffries: Dan's assertion, as I recall it, was that Haskell lets us express the program 'in the way we think'. On the contrary, what Haskell does in my opinion is let us express the program in the way Haskell thinks * sedd: [On the improving Haskell and Lua scores on the language shootout] This is awesome. It's like watching a match between the team of the town where you're from, and the team of the town where you live. Either way you've got a reason to get drunk after the game. * emeijer: Functional programming has finally arrived to the masses. It's name is not Lisp, ML or Haskell: it's Visual Basic * audreyt: Because Haskell is such a reasonable language, we reason about it all the time, and we also have a bot to reason it for us when we are lazy * spiffy: needs to stop trying to understand monads at night * psykotic: spiffy: they're just monoids on the category of endofunctors over some category, what's the big deal? * skew: also, if you use ST you know the code is just using mutable variables, rather than formatting your hard drive * Baughn: I once explained monads to a non-programmer: 'And? What's so hard about that?' * monochrom: The problem is that bad programmers will assess tutorials for good programmers as 'ivory tower', and moreover bad programmers are the vocal majority. It gets you bad press * scodil: you say 'sledgehammer' like its a bad thing * sjanssen: I suspect that planet.haskell.org has more content on catamorphisms than cats Code Watch * Wed Nov 1 08:43:29 PST 2006. Simon Peyton Jones. Major overhaul of the Simplifier. This big patch completely overhauls the Simplifier. The simplifier had grown old and crufty, and was hard to understand and maintain. This new version is still quite complicated, because the simplifier does a lot, but it's much easier to understand, for me at least. About the Haskell Weekly News Each week, new editions are posted to [48]the Haskell mailing list as well as to [49]the Haskell Sequence and [50]Planet Haskell. [51]RSS is also available, and headlines appear on [52]haskell.org. The Haskell Weekly News is also [53]available in Spanish translation. To help create new editions of this newsletter, please see the [54]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 48. http://www.haskell.org/mailman/listinfo/haskell 49. http://sequence.complete.org/ 50. http://planet.haskell.org/ 51. http://sequence.complete.org/node/feed 52. http://haskell.org/ 53. http://haskell.org/haskellwiki/HWN/es 54. http://haskell.org/haskellwiki/HWN