
*Top Picks:* - Team GHC announces the first release candidate of version 8.0 http://haskell.1045720.n5.nabble.com/ANNOUNCE-Glasgow-Haskell-Compiler-8-0-1.... New features include: - Strict and StrictData extensions - TypeFamilyDependencies extension for injective type families https://ghc.haskell.org/trac/ghc/wiki/InjectiveTypeFamilies - TypeInType extension for more dependent typing hackery - explicit type application in plain Haskell, not Core - Applicative do-notation - a spanking new pattern-match checker - modularization of the ghci interpreter: it can now run as an independent process Note that the announcement includes a list of bugs linked to the new features. - The engineers at an Australian real estate listings website explain how they "used Category Theory to solve a problem in Java." http://techblog.realestate.com.au/how-we-used-category-theory-to-solve-a-pro... They face the problem of their search API having grown gnarly and inextensible. First they offer a monoid tutorial culminating in SearchResults -> SearchResults endomorphisms. Then they regularize their database lookups as Kleisli-composable instances of a monomorphic state monad of type (DataSource, SearchResults) -> SearchResults. Finally, they profunctorize the state monad for mereological development of the DataSource. So how was the blog post received? A vocal section of the HN community express skepticism https://news.ycombinator.com/item?id=10892696. One haskell subredditor found it "an excellent article." https://www.reddit.com/r/haskell/comments/40s85b/how_we_used_category_theory... - Verity Stob https://en.wikipedia.org/wiki/Verity_Stob, the doyen of information technology satire, skewers the cargo culting of Functional Programming http://www.theregister.co.uk/2016/01/13/stob_remember_the_monoids/ and by the by writes a monad tutorial (omg!). Haskell redditors chuckle and cluck at the hatchet job https://www.reddit.com/r/haskell/comments/40wqzf/learn_you_func_prog_on_five... . - Team Wander Nauta creates Viskell https://github.com/wandernauta/viskell, "an experimental visual programming environment for a typed (Haskell-like) functional programming language." Programming with touch tablets in mind, he implements Viskell in Java 8 because "Haskell lacks suitable GUI libraries, and we need good multi-touch support." A slides PDF contains more screenshots. https://github.com/wandernauta/viskell/blob/master/viskell-nlfpday.pdf Well-received on both Hacker News https://news.ycombinator.com/item?id=10874294 and /r/haskell https://www.reddit.com/r/haskell/comments/406au9/viskell_visual_programming_... . *Quotes of the Week:* - Tom Ellis: https://news.ycombinator.com/item?id=10870488#up_10874714 In Haskell you don't fight the type system. It fights your bugs. - Jeremy Bowers: https://news.ycombinator.com/item?id=10892293#up_10896419 The reason I find Haskell interesting is precisely that it's the only place I know where the theoretically-minded and the practically-minded get together and interpollinate. Everywhere else the one group pretty much just sneers at the other. - Redditor lukewarm: https://www.reddit.com/r/haskell/comments/40aa4n/how_to_make_industry_qualit... Yes, you can write industry quality software in Haskell. Do all your computations in the IO monad, keep intermediate results in MVars. Use only Int and String types. Use exceptions to handle errors. Write yourself custom constructs to emulate for and while loops, preferably using Template Haskell. -- Kim-Ee