<!-- 2019-09-12 -->

Welcome to another issue of Haskell Weekly!
[Haskell](https://www.haskell.org) is a safe, purely functional programming language with a fast, concurrent runtime.
This is a weekly summary of what's going on in its community.

## Featured

-   [Composite 0.6 Released](https://dfithian.github.io/2019/09/06/composite-0.6-released.html) by Dan Fithian
    > I recently released version 0.6 of the composite library on GitHub! It's been a few years since the last release, so the code had stagnated quite a bit.

-   [GraphQL Haskell got a new maintainer](https://www.caraus.io/articles/graphql-haskell-new-maintainer) by Eugene Wissner
    > Some years ago there was an unfinished GraphQL implementation. The project was on hold for the last few years. Recently I took over the maintenance to continue the development.

-   [Processing CSV files in Haskell](https://etorreborre.blogspot.com/2019/09/processing-csv-files-in-haskell.html) by Eric Torreborre
    > I wanted to check how hard it would be to use Haskell to write a small program to help me solve a "real-life" problem. I have always been pretty bad at doing accounting for the family, with a mix of Excel spreadsheets filled with random amounts and dates.

-   [Demystifying `MonadBaseControl`](https://lexi-lambda.github.io/blog/2019/09/07/demystifying-monadbasecontrol/) by Alexis King
    > In this blog post, I hope to provide a complete survey of `MonadBaseControl` --- how it works, how it's designed, and how it can go wrong --- in a way that is accessible to anyone with a firm grasp of monads and monad transformers.

-   [GSoC 2019 - Final Evaluation](https://rashadg1030.github.io/rashad-blog/8.html) by Rashad Gover
    > As we approach the beginning the Fall, my journey as a Google Summer of Code student for Haskell.Org sadly comes to an end.

-   [Five Ways to Compute the Cartesian Product with Haskell](https://lamb-the-lambda.com/haskell/2019/09/07/five-cartesian.html) by Andrew Ribeiro
    > This post contains five Haskell functions which compute the cartesian product using different techniques.

-   [The easiest way to setup a Haskell environment on Windows](https://hub.zhox.com/posts/introducing-haskell-dev/) by Tamar Christina
    > Chocolatey contains some of my own packages for installing GHC and cabal. The GHC package goes all the way back to GHC 6.10.1 and the cabal-install package to cabal-install 0.6.0.

-   [Remote Interactive Courses](https://www.well-typed.com/blog/2019/09/remote-interactive-courses/) by Christine Gundry and Andres Löh
    > Given the success of introducing an online version of our "Type level programming with GHC" course, we're offering this again alongside two of our other courses: "Compact Introduction to Haskell" and "Performance and Optimisation".

-   [Why Haskell is important](https://www.tweag.io/posts/2019-09-06-why-haskell-is-important.html) by Mark Karpov
    > People keep asking me, "What's the point of Haskell, why do you folks even use it?". How can you answer this?

-   [Haskell IDE Support (hie-core lsp Sept. 2019)](https://chrispenner.ca/posts/hie-core) by Chris Penner
    > Here's a super quick guide on adding hie-core to your workflow!

## Jobs

Trying to hire a Haskell developer?
You should [advertise with us](https://haskellweekly.news/advertising.html)!

## In brief

-   [Functor, applicative, and monad](https://typeslogicscats.gitlab.io/posts/functor-applicative-monad.html)
    > Functor, applicative, and monad are related concepts that frequently arise in functional programming. These three ideas give a name to common patterns across different operations defined on different data types, so recognizing their occurrences are important.

-   [Announcing the list-singleton package](https://taylor.fausak.me/2019/09/07/list-singleton/)
    > Have you ever found yourself typing the five-character Haskell expression `(:[])` and thinking to yourself, "I wish I could add an external dependency for this"?

-   [Just letting you know that Formality has evolved a lot in the last few months!](https://np.reddit.com/r/haskell/comments/d2gcyw/just_letting_you_know_that_formality_has_evolved/) by Victor Maia
    > Formality is an upcoming proof/programming language that combines optimal reductions with dependent types, theorem proving and so on.

-   [Why does a lot of learning material in Haskell have overly complex use of language?](https://np.reddit.com/r/haskell/comments/d0ek0x/why_does_a_lot_of_learning_material_in_haskell/)
    > I'm all for being terse to avoid confusion and Haskell community in general is really good at that. But am I right in feeling that this is a contributor towards Haskell renown steep learning curve?

-   [A high-speed network driver written in C, Rust, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python](https://github.com/ixy-languages/ixy-languages/tree/bafe485f69d659f19df18e185a7630f6726bda41)
    > Yes, these drivers are really a full implementation of an actual PCIe driver in these languages; they handle everything from setting up DMA memory to receiving and transmitting packets in a high-level language.

-   [Haskell Extensions cheat sheets](https://impurepics.com/posts/2019-08-01-haskell-extensions.html)

-   [MuniHac 2019 Keynotes](https://www.youtube.com/playlist?list=PLxxF72uPfQVRdAsvj7THoys-nVj-oc4Ss)

## Packages of the week

-   [ghcide-0.0.2](https://hackage.haskell.org/package/ghcide-0.0.2)
-   [hkgr-0.2.2](https://hackage.haskell.org/package/hkgr-0.2.2)
-   [interactive-plot-0.1.0.0](https://hackage.haskell.org/package/interactive-plot-0.1.0.0)
-   [llvm-hs-9.0.0](https://hackage.haskell.org/package/llvm-hs-9.0.0)
-   [overloaded-0.1.1](https://hackage.haskell.org/package/overloaded-0.1.1)
-   [releaser-0.1.0.0](https://hackage.haskell.org/package/releaser-0.1.0.0)

## Call for participation

-   [Howl: Custom port support](https://github.com/augustohdias/Howl/issues/6)
-   [polysemy-zoo: Remove Polysemy.Alias and InterpreterOf](https://github.com/polysemy-research/polysemy-zoo/issues/52)
