Issue 101

Welcome to another issue of Haskell Weekly! Haskell 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.

Want to see something featured in Haskell Weekly? Open an issue or pull request on GitHub.

Featured

  • Gamedev with Elm types

    February’s game jam set a theme of safety. Leveraging Elm’s type system helped make the experience of building a game much nicer.

  • Welcome to Type Classes!

    This site will give a home to all the things we wanted to do but couldn’t fit into Joy. The core of the site will be video courses on Haskell, Nix, and related subjects.

  • Announcing rowdy, the web routing DSL

    rowdy has the best of both worlds: you get compile-time guarantee by interpreting the DSL in a Template Haskell splice, so you can generate datatypes and functions.

  • HKD: Less terrible than you might expect

    I thought I’d take some time to respond to some of the concerns raised about my recent higher-kinded data and free lenses for higher-kinded data posts.

  • Connecting to MailChimp … from scratch!

    There are a couple different Haskell libraries out there for MailChimp. But we’re not going to use them! Instead, we’ll learn how we can use Servant to connect directly to the API.

  • IHaskell on mybinder.org

    I’m pretty excited about what this means for the Jupyter ecosystem and IHaskell in particular, and I’m looking forward to seeing what other people do with this!

  • Haskell roguelike

    In this series of posts I’m going to discuss some of the major design decisions that you will need to consider when making a Haskell roguelike game.

  • On anonymous networking in Haskell: Announcing Tor and I2P for Haskell

    I have developed a Haskell API for both projects. In this post I will outline the differences between these projects and illustrate how to use them within Haskell.

  • Marvellous moeb

    Haskell can process flat files as though they were hierarchal with the help of lazy evaluation and one ridiculously clever one-line function.

  • The Gonimo architecture, Part 1: The component

    The most important part is probably that we split up a component’s input into a model (its dependencies on other components) and a Config which is introduced by the component itself.

Jobs

In brief

Package of the week

This week’s package of the week is tree-traversals, a library providing in-order, pre-order, post-order, level-order, and reversed level-order traversals for tree-like types.

Call for participation

Events