Haskell Weekly News: Issue 97 - December 13, 2008

--------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20081213 Issue 97 - December 13, 2008 --------------------------------------------------------------------------- Welcome to issue 97 of HWN, a newsletter covering developments in the [1]Haskell community. Lots of neat blog posts and funny quotes this week. Don't forget to keep adding [2]haiku to the wiki, and don't miss Alex McLean (yaxu)'s [3]streaming livecoding performance tonight! Announcements Spam on HaskellWiki. Ashley Yakeley [4]asked what people would like to do about the increasing amounts of spam on the Haskell wiki, and offered some suggestions. The Timber compiler 1.0.2. Johan Nordlander [5]announced the first public release of the [6]Timber compiler. Timber is a modern language for building event-driven systems, based around the notion of reactive objects. It is also a purely functional language derived from Haskell, although with a strict evaluation semantics. To try it out, just grab the [7]timberc package on Hackage. Retrospective on 2008?. Don Stewart [8]proposed the idea of a 2008 retrospective. How would you choose the 10 best new libraries, applications, blog posts, etc. of 2008? a haskell_proposals subreddit. Jason Dusek [9]announced a [10]subreddit for Haskell library proposals. The idea is that Web 2.0 will help us to allocate our collective talents more efficiently when it comes to extensions (and perhaps clue us in when our pet project is something people really want). permutation-0.2. Patrick Perry [11]announced a [12]new version of the permutation library, which includes data types for storing permutations. It implements pure and impure types, the latter which can be modified in-place. The main utility of the library is converting between the linear representation of a permutation to a sequence of swaps. This allows, for instance, applying a permutation or its inverse to an array with O(1) memory use. Data.List.Split. Brent Yorgey [13]announced the creation of a wiki page for [14]Data.List.Split, a hypothetical module containing implementations of every conceivable way of splitting lists known to man, so we no longer have to (1) argue about the 'one true' interface for a 'split' function, or (2) be embarrassed when people ask why there isn't a split function in the standard libraries. Please add code or comments! At some point it will be uploaded as a new module to Hackage. Announcing Haskell protocol-buffers version 1.2.2. Chris Kuklewicz [15]announced new versions of [16]protocol-buffers, [17]protocol-buffers-descriptor, and [18]hprotoc. Discussion A curious monad. Andrew Coppin [19]exhibited an interesting Storage monad, which (it turns out) is similar to ST. An enlightening discussion if you want to understand how ST works and the motivation behind it. Origins of '$'. George Pollard [20]asked about the origins of the $ operator (low-precedence function application) in the standard libraries, leading to some interesting history and general discussion about notation. Blog noise [21]Haskell news from the [22]blogosphere. * Jamie Brandon: [23]Zombified GMap. Jamie is determined to get his SoC generalized map library released! * Philip Wadler: [24]Informatics 1 - Fancy Dress and Competition. * >>> Eduard - Gabriel Munteanu: [25]Learning Haskell, part 2. * Martin Sulzmann: [26]Equality, containment and intersection among regular expressions via symbolic manipulation. * Neil Mitchell: [27]mapM, mapM_ and monadic statements. * Alson Kemp: [28]A HAML parser for Haskell. * Chris Done: [29]More Haskell blogging. * Twan van Laarhoven: [30]Knight in n, part 4: tensors. Part four of Twan's enlightening series on computing knight moves. * Alex McLean: [31]Saturday night stream. All the cool kids will be watching Alex's streaming livecoding performance TONIGHT, using (among other things) a tool implemented in Haskell. * David Sankel: [32]Synchronous Events. * Lennart Augustsson: [33]The OCaml code again. * Lennart Augustsson: [34]Abstracting on, suggested solutions. * Lennart Augustsson: [35]The abstraction continues. * Conal Elliott: [36]Functional interactive behavior. * Conal Elliott: [37]Trimming inputs in functional reactive programming. * Mikael Vejdemo Johansson (Syzygy-): [38]J, or how I learned to stop worrying and love the matrix. * Conal Elliott: [39]Why classic FRP does not fit interactive behavior. * Clifford Beshers: [40]Functional Programming Marketing. * Lennart Augustsson: [41]A somewhat failed adventure in Haskell abstraction. * >>> Joey Hess: [42]haskell and xmonad. * Andy Gill: [43]The Timber compiler 1.0.2. * Manuel M T Chakravarty: [44]Not a particularly good article, but.... * >>> Chris Double: [45]Random and Binary IO using Iteratees. * >>> Chris Double: [46]Not a Tutorial on HAppS. * "FP Lunch": [47]The new GHC API. * Luke Palmer: [48]Compact data types. * Neil Mitchell: [49]F# from a Haskell perspective. * Real-World Haskell: [50]RWH Now In Store. * >>> Sebastian Fischer: [51]Constraint Functional-Logic Programming. * >>> fhtr: [52]Hexagons with Haskell. * >>> Eduard - Gabriel Munteanu: [53]Learning Haskell. * Bryan O'Sullivan: [54]Functional programmers on Twitter. * Martin Sulzmann: [55]Parallel Join Patterns with Guards and Propagation. * Martin Sulzmann: [56]Multi-set rewrite rules with guards and a parallel execution scheme. * Martin Sulzmann: [57]STM with control: Communication for retrying transactions. * Martin Sulzmann: [58]Concurrent Goal-Based Execution of Constraint Handling Rules. * >>> talkingCode: [59]Haskell, GTK and Multi-Threading. * >>> Gianfranco Alongi: [60]QuickCheck(ing) the code I C - source. Quotes of the Week * quicksilver: Baughn: glFlush? the 80s called, they want your programs back? * gwern: the best way to optimize a program is to make it lazier or stricter. * ksf: Perl is obfuscated by design, haskell is designed by obfuscation. * conal: omg -- i can print right from emacs again. praise be to Linux! * mmorrow: [I] didn't realize what it really said until after i @remembered it * blackh: Haskell is great because of all the wonderful things you can't do with it. * JustinBogner: gitit's 46 dependencies convinced me to install cabal-install, and now I couldn't be happier! * Anonymous: I'd love to explain to you how to write hello world in Haskell, but first let me introduce you to basic category theory. * lilac: @type \o-> look at my muscles <lambdabot> forall t nice muscles. t -> nice -> muscles * ook: (:[]) * oink: <^(oo)^> * mmorrow: {-# RULES "HAI; CAN HAS STDIO?" id = unsafePerformIO (system "killall -9 breathingMachine && xeyes &" >> return id) #-} * gwern: We will be welcomed as liberators! I estimate that we will need 50000 haskellers at most and will be able to wind up the occupation quickly About the Haskell Weekly News New editions are posted to [61]the Haskell mailing list as well as to [62]the Haskell Sequence and [63]Planet Haskell. [64]RSS is also available, and headlines appear on [65]haskell.org. To help create new editions of this newsletter, please see the information on [66]how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get [67]http://code.haskell.org/~byorgey/code/hwn/ . References 1. http://haskell.org/ 2. http://haskell.org/haskellwiki/Haikus 3. http://yaxu.org/saturday-night-stream/ 4. http://article.gmane.org/gmane.comp.lang.haskell.general/16678 5. http://article.gmane.org/gmane.comp.lang.haskell.general/16672 6. http://timber-lang.org/ 7. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/timberc 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/48778 9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/48721 10. http://www.reddit.com/r/haskell_proposals/ 11. http://article.gmane.org/gmane.comp.lang.haskell.cafe/48663 12. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/permutation 13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/48868 14. http://haskell.org/haskellwiki/Data.List.Split 15. http://article.gmane.org/gmane.comp.lang.haskell.libraries/10406 16. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/protocol-buffers 17. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/protocol-buffers-... 18. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hprotoc 19. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/48806 20. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/48622 21. http://planet.haskell.org/ 22. http://haskell.org/haskellwiki/Blog_articles 23. http://jamiiecb.blogspot.com/2008/12/zombified-gmap.html 24. http://wadler.blogspot.com/2008/12/informatics-1-functional-programming.html 25. http://eduard-munteanu.blogspot.com/2008/12/learning-haskell-part-2.html 26. http://sulzmann.blogspot.com/2008/12/equality-containment-and-intersection.h... 27. http://neilmitchell.blogspot.com/2008/12/mapm-mapm-and-monadic-statements.ht... 28. http://www.alsonkemp.com/programming/a-haml-parser-for-haskell/ 29. http://chrisdone.com/blog/2008/12/11/More-Haskell-blogging 30. http://twan.home.fmf.nl/blog/haskell/Knight4.details 31. http://yaxu.org/saturday-night-stream/ 32. http://netsuperbrain.com/blog/posts/synchronous-events/ 33. http://augustss.blogspot.com/2008/12/ocaml-code-again-im-posting-slight.html 34. http://augustss.blogspot.com/2008/12/abstracting-on-suggested-solutions-i.ht... 35. http://augustss.blogspot.com/2008/12/abstraction-continues-i-got-several.htm... 36. http://conal.net/blog/posts/functional-interactive-behavior/ 37. http://conal.net/blog/posts/trimming-inputs-in-functional-reactive-programmi... 38. http://blog.mikael.johanssons.org/archive/2008/12/j-or-how-i-learned-to-stop... 39. http://conal.net/blog/posts/why-classic-frp-does-not-fit-interactive-behavio... 40. http://cliffordbeshers.blogspot.com/2007/11/functional-programming-marketing... 41. http://augustss.blogspot.com/2008/12/somewhat-failed-adventure-in-haskell.ht... 42. http://kitenet.net/~joey/blog/entry/haskell_and_xmonad/ 43. http://blog.unsafeperformio.com/?p=32 44. http://justtesting.org/post/63809222 45. http://www.bluishcoder.co.nz/2008/12/random-and-binary-io-using-iteratees.ht... 46. http://www.bluishcoder.co.nz/2008/12/not-tutorial-on-happs.html 47. http://sneezy.cs.nott.ac.uk/fplunch/weblog/?p=168 48. file://localhost/home/brent/hacking/hwn/20081213.html 49. http://neilmitchell.blogspot.com/2008/12/f-from-haskell-perspective.html 50. http://www.realworldhaskell.org/blog/2008/12/06/rwh-now-in-store/ 51. http://www-ps.informatik.uni-kiel.de/~sebf/projects/cflp.html 52. http://fhtr.blogspot.com/2008/12/hexagons-with-haskell.html 53. http://eduard-munteanu.blogspot.com/2008/12/learning-haskell.html 54. http://www.serpentine.com/blog/2008/12/05/functional-programmers-on-twitter/ 55. http://sulzmann.blogspot.com/2008/12/parallel-join-patterns-with-guards-and.... 56. http://sulzmann.blogspot.com/2008/10/multi-set-rewrite-rules-with-guards-and... 57. http://sulzmann.blogspot.com/2008/12/stm-with-control-communication-for.html 58. http://sulzmann.blogspot.com/2008/12/concurrent-goal-based-execution-of.html 59. http://talkingcode.co.uk/2008/12/02/haskell-gtk-and-multi-threading/ 60. http://writert.blogspot.com/2008/12/quickchecking-code-i-c-source.html 61. http://www.haskell.org/mailman/listinfo/haskell 62. http://sequence.complete.org/ 63. http://planet.haskell.org/ 64. http://sequence.complete.org/node/feed 65. http://haskell.org/ 66. http://haskell.org/haskellwiki/HWN 67. http://code.haskell.org/~byorgey/code/hwn/
participants (1)
-
Brent Yorgey