
The main bullet point is missing: Correctness. How could we have forgotten quickcheck?
quickCheck (\xs -> sort (sort xs) == sort xs) OK, 100 tests passed.
2009/5/18 Don Stewart
adam.turoff:
On Mon, May 18, 2009 at 2:06 PM, Don Stewart
wrote: Exactly: focus on what the user wants to do (e.g. write multicore code, write safe code, write code quickly), not how that is achieved: "bounded parametric polymorphism" or "monads"
Parametric polymorphism is a big win, and highlights something a user wants to do. A *shallow* overview (one bullet, one function) might fit. Off the top of my head:
incr :: (Num a) => a -> a incr = (+ 1)
Writing that operation in other languages is either (a) repeated for every numeric type or (b) not typesafe. Haskell is one of the few that delivers both, and that is worth underscoring. And it gives you an opportunity to wave your hands and talk about type inferencing without wasting room on a slide.
Right, so talk about "Reuse!" (polymorphism) , "Productivity" (type inference) "Performance" (static typing + optimizer)
-- Don _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Eugene Kirpichov Web IR developer, market.yandex.ru