Haskell Weekly News: Issue 93 - November 15, 2008

--------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20081115 Issue 93 - November 15, 2008 --------------------------------------------------------------------------- Welcome to issue 93 of HWN, a newsletter covering developments in the [1]Haskell community. Community News Congratulations to Ganesh (aka Heffalump) and Amanda on the [2]birth of Alexander Suresh Kerr Sittampalam! Announcements bustle-0.1. Will Thompson [3]announced the [4]release of [5]Bustle, a tool to show diagrams of D-Bus traffic for profiling purposes. It consists of a small C executable to log traffic, and a Gtk+ application which draws diagrams using Cairo. haskell-src-exts 0.4.1. Niklas Broberg [6]announced a new major release of the [7]haskell-src-exts package, an extension of the standard haskell-src package which handles most common syntactic extensions to Haskell. The new release features a cleaned up AST and names without ugly disambiguation prefixes. darcs 2.1.1rc2. Eric Kow (kowey) [8]announced the release of [9]darcs 2.1.1rc2, which adds support for GHC 6.10.1. It also includes a Windows bug fix. If you're using GHC 6.10.1 or Windows, give it a try and let the darcs development team know how it works. hpapi 0.1 release. Michael D. Adams [10]announced the first release of [11]hpapi, Performance API (PAPI) bindings for Haskell. PAPI provides access to various CPU counters such as cache-miss, instruction and pipeline stall counts. Workflow-0.1. Alberto G. Corona [12]announced the release of [13]Workflow, a library for transparent execution of computations across shutdowns and restarts. Reactive library (FRP) and mailing list. Conal Elliott [14]announced the release of [15]Reactive, a library for functional reactive programming (FRP), similar to the original [16]Fran but with a more modern interface (using standard type classes) and a hybrid push/pull implementation. It is designed to be used in a variety of contexts, such as interactive 2D and 3D graphics, graphical user interfaces, web services, and automatic recompilation/re-execution. There is also now a [17]mailing list and a [18]feature/bug tracker. ANN (sorta): OpenGL with extra type safety. Neal Alexander [19]announced a modification of the hOpenGL (and GLFW) source tree to force extra type checking on its various IO actions using the -XGeneralizedNewtypeDeriving extension. The main motivation was for writing concurrent OpenGL applications; the second motivation was to enforce static type checking on commands that can only be executed in certain OpenGL contexts (sending vertex data for example). Hopefully the code will be uploaded to Hackage as a separate package soon. FieldTrip library (functional 3D) and mailing list. Conal Elliott [20]announced the release of [21]FieldTrip, a library for functional 3D graphics. It is intended for building static, animated, and interactive 3D geometry, efficient enough for real-time synthesis and display. FieldTrip also has a [22]mailing list and a [23]feature/bug tracker. gitit 0.2 release - wiki using HAppS, git, pandoc. John MacFarlane [24]announced the upload of an early version of [25]gitit, a Haskell wiki program, to HackageDB. Gitit uses HAppS as a webserver, git for file storage, pandoc for rendering the (markdown) pages, and highlighting-kate for highlighted source code. You can [26]try it out here. Comments and patches welcome. Discussion Proof that Haskell is RT. Andrew Birkett [27]asked whether there exists a formal proof that the Haskell language is referentially transparent. Such a thing cannot exist, since Haskell has no formally defined semantics, but an interesting discussion about referential transparency and semantics ensued anyway. What *not* to use Haskell for. Dave Tapley [28]asked how people answer the question, "what does Haskell not do well?" Unfortunately, it seems that there is no good answer to this question and the thread degenerated into a discussion of all the great things you can do with Haskell. If only Haskell sucked more. Blog noise [29]Haskell news from the [30]blogosphere. * Braden Shepherdson: [31]Pimp Your XMonad #2: SmartBorders. The second in Braden's series on customising xmonad explains how to use the NoBorders extension to get rid of window borders when you don't want them. * Real-World Haskell: [32]Real World Haskell Electronic Edition Now On Sale. * Conal Elliott: [33]More beautiful fold zipping. * >>> Stephen: [34]Endless Cavern. A procedurally-generated tessellated-cavern flying game. * Twan van Laarhoven: [35]Arrays without bounds. Unbounded arrays (with O(1) amortized access) in Haskell! * "The GHC Team": [36]Comparing concurrent linked-list implementations in Haskell. * Ketil Malde: [37]454 sequencing and parsing the SFF binary format. * Tom Schrijvers: [38]Type Invariants for Haskell. Tom, Louis-Julien Guillemette, and Stefan Monnier's paper on Type Invariants for Haskell, which was recently accepted at PLPV'09. * Conal Elliott: [39]Another lovely example of type class morphisms. Conal elaborates on Max Rabkin's recent post on composable folds. * Real-World Haskell: [40]Beautiful Parallelism: Harnessing Multicores with Haskell. Don Stewart will be talking about programming mainstream multicore systems with Haskell at SC'08 next week in Austin, Texas. * Luke Palmer: [41]Sketch of Udon (Version Control/Packaging system). Luke sketches a high-level design for a distributed storage system that could be used as the basis for solving a number of interesting problems. * Galois, Inc: [42]Galois awarded NASA research contract. * Mark Jason Dominus: [43]Representing ordinal numbers in the computer and elsewhere. * The GHC Team: [44]Bootstrapping cabal-install. * Jason Dagit: [45]Phantom Types, Existentials and Controlling Unification -- Part 1. * Ben Moseley: [46]Why does Functional Programming matter?. Quotes of the Week * BMeph: In a functional world, students would ask how that index shadowing works in those funny 'for' statements... * digit: i'm almost annoyed at how brilliant xmonad is. * _pizza_: i think Haskell is undoubtedly the world's best programming language for discovering the first few dozen numbers in the Fibonacci sequence over IRC. * adu: let uncat3 [] = [] ; uncat3 xs = (let (ys, zs) = splitAt 3 xs in ys : uncat3 zs) ; getFrom x y = map (x !!) $ map (fromIntegral . ((\x -> fromIntegral $ foldl (.|.) (0::Word8) (zipWith (\c n -> if c then bit n else (0::Word8)) x [0..2])) :: [Bool] -> Int)) $ reverse . uncat3 . reverse . concat . map (((\x -> map (testBit x) [7,6..0]) :: Word8 -> [Bool]) . fromIntegral . ord) $ y in getFrom " HWdelor" "e\184-\235" * Beelsebob: ((:[]) "pigs eat") <^(++)^> ((:[]) " robot monkies") About the Haskell Weekly News New editions are posted to [47]the Haskell mailing list as well as to [48]the Haskell Sequence and [49]Planet Haskell. [50]RSS is also available, and headlines appear on [51]haskell.org. To help create new editions of this newsletter, please see the information on [52]how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get [53]http://code.haskell.org/~byorgey/code/hwn/ . References 1. http://haskell.org/ 2. http://urchin.earth.li/aegean/baby/ 3. http://www.haskell.org//pipermail/haskell-cafe/2008-November/050626.html 4. http://people.collabora.co.uk/~wjt/bustle/releases/bustle-0.1.tar.gz 5. http://resiak.livejournal.com/59590.html 6. http://www.haskell.org//pipermail/haskell-cafe/2008-November/050634.html 7. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/haskell-src-exts-... 8. http://www.haskell.org//pipermail/haskell-cafe/2008-November/050378.html 9. http://darcs.net/darcs-2.1.1rc2.tar.gz 10. http://article.gmane.org/gmane.comp.lang.haskell.general/16612 11. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hpapi 12. http://article.gmane.org/gmane.comp.lang.haskell.general/16607 13. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Workflow 14. http://article.gmane.org/gmane.comp.lang.haskell.general/16604 15. http://haskell.org/haskellwiki/Reactive 16. http://conal.net/Fran 17. http://www.haskell.org/mailman/listinfo/reactive 18. http://trac.haskell.org/reactive 19. http://article.gmane.org/gmane.comp.lang.haskell.cafe/47458 20. http://article.gmane.org/gmane.comp.lang.haskell.cafe/47416 21. http://haskell.org/haskellwiki/FieldTrip 22. http://www.haskell.org/mailman/listinfo/FieldTrip 23. http://trac.haskell.org/FieldTrip 24. http://article.gmane.org/gmane.comp.lang.haskell.cafe/47384 25. http://hackage.haskell.org/cgi-bin/hackage-scripts/package/gitit 26. http://johnmacfarlane.net:5001/ 27. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/47569 28. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/47491 29. http://planet.haskell.org/ 30. http://haskell.org/haskellwiki/Blog_articles 31. http://braincrater.wordpress.com/2008/11/15/pimp-your-xmonad-2-smartborders/ 32. http://www.realworldhaskell.org/blog/2008/11/15/real-world-haskell-electroni... 33. http://feeds.feedburner.com/~r/conal/~3/453765396/ 34. http://www.maths.tcd.ie/~icecube/2008/11/endless-cavern/ 35. http://twan.home.fmf.nl/blog/haskell/UnboundedArray.details 36. http://ghcmutterings.wordpress.com/2008/11/14/comparing-concurrent-linked-li... 37. http://blog.malde.org/index.php/2008/11/14/454-sequencing-and-parsing-the-sf... 38. http://tomschrijvers.blogspot.com/2008/11/type-invariants-for-haskell.html 39. http://feeds.feedburner.com/~r/conal/~3/452607365/ 40. http://www.realworldhaskell.org/blog/2008/11/12/beautiful-parallelism-harnes... 41. http://lukepalmer.wordpress.com/2008/11/12/sketch-of-udon-version-controlpac... 42. http://www.galois.com/blog/2008/11/11/galois-awarded-nasa-research-contract/ 43. http://blog.plover.com/math/ordinals.html 44. http://ghcmutterings.wordpress.com/2008/11/10/bootstrapping-cabal-install/ 45. http://blog.codersbase.com/2008/11/10/phantom-types-existentials-and-control... 46. http://nattermorphisms.blogspot.com/2008/11/why-does-functional-programming-... 47. http://www.haskell.org/mailman/listinfo/haskell 48. http://sequence.complete.org/ 49. http://planet.haskell.org/ 50. http://sequence.complete.org/node/feed 51. http://haskell.org/ 52. http://haskell.org/haskellwiki/HWN 53. http://code.haskell.org/~byorgey/code/hwn/

Brent Yorgey wrote:
--------------------------------------------------------------------------- ANN: OpenGL with extra type safety. Neal Alexander Hopefully the code will be uploaded to Hackage as a separate package soon.
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/OGL-0.0.0 http://haskell.org/haskellwiki/OGL

On Sun, 16 Nov 2008, Neal Alexander wrote:
Brent Yorgey wrote:
--------------------------------------------------------------------------- ANN: OpenGL with extra type safety. Neal Alexander Hopefully the code will be uploaded to Hackage as a separate package soon.
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/OGL-0.0.0 http://haskell.org/haskellwiki/OGL
I'd prefer a more descriptive package name like safe-opengl or so.
participants (3)
-
Brent Yorgey
-
Henning Thielemann
-
Neal Alexander