Welcome to issue 174 of the HWN, a newsletter covering developments in the Haskell community. This release covers the week of March 13-19.
Announcements
JP Moresmau announced a new release of EclipseFP with support for ghc 7!
S. Doaitse Swierstra announced the release of version 2.7.0 to the uu-parsinglib library to hackage.
Vincent Gerard informed us that he has taken over maintainership of hsmagick, which is "a FFI bindings library to ImageMagick." He is pleased to announce the 0.5 release of the library.
Malte Harder announce the first release of the Craftwerk graphics library for 2d vector graphics.
Corey O'Connor annouced a new release of his VTY library.
Brent Yorgey announced the release of the special Poetry and Fiction Edition of The Monad.Reader. Thanks for putting this together Brent!
Gregory D. Weber announced version 1.2.4 of his Sifflet and sifflet-lib. "This is a compatibility release for HXT >= 9.1."
Edward Kmett remminded us that the Google Summer of Code is upon us. Follow the link to see the sign up information.
Quotes of the Week
- ddarius: *ddarius is more of a glass SUM_n (-1)^n full person.
- monochrom: some kind of lazy evaluation is already known to highschool kids. teachers tell you that in a*(b+c), "evaluate b+c first", right? well, I challenge you to take 0*(389238493+97283748) and find one single student who faithfully evaluate 389238493+97283748 first.
- hpc: in soviet russia, yoda speaks flawless english
- lambdabot: trololololo
- hpc: jokes are subject to an incompleteness theorem; if you can prove they are funny, they were never good jokes to begin with
- hpc: when all you have is Haskell, everything looks like a research paper
- Edward Kmett:Clearly we need some sort of xbox live-like achievement system for these. Achievement Unlocked: Stumped Oleg!
Top Reddit Stories
- Haskell.org has been accepted for the 2011 Google Summer of Code
From (twitter.com), scored 48 with 1 comments.
Read on reddit.
Read the original post. - Haskell's Niche: Hard Problems
From (cdsmith.wordpress.com), scored 47 with 17 comments.
Read on reddit.
Read the original post. - A little care and feeding can go a long way
From (serpentine.com), scored 39 with 6 comments.
Read on reddit.
Read the original post. - The reception of monads circa 1995...
From (self.haskell), scored 35 with 1 comments.
Read on reddit.
- BlazeHtml: a blazingly fast HTML combinator library
From (skillsmatter.com), scored 29 with 18 comments.
Read on reddit.
Read the original post. - Simon Peyton Jones: Managing parallelism: embrace diversity, but control side effects
From (skillsmatter.com), scored 28 with 12 comments.
Read on reddit.
Read the original post. - EZYang: Mutation is frequently not what people expect ; mutation is not modular, and mutation is complicated.
From (blog.ezyang.com), scored 26 with 0 comments.
Read on reddit.
Read the original post. - Functor is to Lens as Applicative is to Biplate: Introducing Multiplate
From (front.math.ucdavis.edu), scored 25 with 19 comments.
Read on reddit.
Read the original post. - Monad.Reader special poetry and fiction edition
From (themonadreader.wordpress.com), scored 23 with 1 comments.
Read on reddit.
Read the original post. - Functional flocks : modelling and visualizing flocking behavior in Haskell
From (syntacticsalt.com), scored 22 with 0 comments.
Read on reddit.
Read the original post.
Top StackOverflow Answers
- Why
does application of `sequence` on List of Lists lead to computation of its Cartesian Product? votes: 12
This works because using lists as monads in Haskell makes them model indeterminism. Consider: sequence [[1,2],[3,4]] By definition this is the same as: do x <- [1,2] y <- [3,4] return [x,y] Just read it as "First a choice between 1 and 2, then a choice between 3 and 4". The list monad will now accumulate all possible outcomes - hence the ...
- In GHCi, why does the kind of the function arrow `:kind (->)` include question marks `(->) :: ?? -&ht; ? -> *`? votes: 11
The ? and ?? kinds refer to GHC extensions, specifically unboxed types. http://hackage.haskell.org/trac/ghc/wiki/IntermediateTypes has a diagram showing relationships between the extended kinds ? (all possible types), # (unboxed types), ?? (boxed or normal unboxed types — "least upper bound of # and *"), (#) (unboxed tuples, which can only be used in a ...
- How to use (->) instances of Monad and confusion about (->) votes: 11
For a given type r, the function of type r -> a can be thought of as a computation delivering an a using an environment typed r. Given two functions r -> a and a -> (r -> b), it's easy to imagine that one can compose these when given an environment (again, of type r). But wait! That's exactly what monads are about! So we can create an instance ...
- How and why is ap defined as liftM2 id in Haskell votes: 10
The type variable a from id can be instantiated at any type, and in this case that type is a -> b. So we are instantiating id at (a -> b) -> (a -> b). Now the type variable a1 from liftM2 is being instantiated at (a -> b), a2 is being instantiated at a, and r is being instantiated at b. Putting it all together, liftM2 is instantiated at ...
- What "reify" and "reification" means in the context of (functional?) programming? votes: 8
So I read up on this, and it is pretty much what it means: taking an abstract concept and making it concrete. Or, there is a proxy that represents the abstract concept. For example, in Lisp, the concept of procedure abstraction and application is reified when you use lambdas. Reification by itself is a broad concept and not just applicable to functional ...
Top StackOverflow Questions
- What "reify" and "reification" means in the context of (functional?) programming? votes: 17, answers: 6
- How to use (->) instances of Monad and confusion about (->) votes: 12, answers: 2
- In GHCi, why does the kind of the function arrow `:kind (->)` include question marks `(->) :: ?? -> ? -> *`? votes: 12, answers: 1
- Haskell-like type system in C votes: 11, answers: 2
- Write a Maximum Monoid using Maybe in Haskell votes: 9, answers: 1
About the Haskell Weekly News
To help create new editions of this newsletter, please send
stories to dstcruz@gmail.com
. I'm in dire need of
finding good "quotes of the week". If you happen to come across
any, please don't hesitate to send it along.
Until next time,
Daniel Santa Cruz
No comments:
Post a Comment