Skip to content

Escaping Cabal Hell with Nix & Making MTL Better with Classy Lenses and Prisms

Photo of Ben Kolera
Hosted By
Ben K. and Nick P.
Escaping Cabal Hell with Nix & Making MTL Better with Classy Lenses and Prisms

Details

Escaping Cabal Hell with Nix - Steven Shaw

First, we'll introduce Nix (http://nixos.org/nix/), a purely functional package system, and highlight its advantages over widespread systems such as APT (https://wiki.debian.org/Apt).

Next, we'll gain some familiariarity with the Nix commands. Learn how to: search for, install, upgrade and remove packages.

Finally, we'll learn how beat Cabal hell and accelerate your Haskell development with Nix. We'll set up Nix for Haskell development. Configure Nix environments containing all your favourite Haskell development tools. Most importantly, pull in library dependencies without recompiling all of hackage. Discover that there's no need to decide between per-project and shared sandboxes — you get to have your cake and eat it too!

Making Transformers Better with Classy Lenses and Prisms - George Wilson

Many applications leverage monad transformer stacks to control IO effects, handle error conditions, pass configurations, and more. As the requirements of these applications grow, the complexity of these transformer stacks can grow proportionally. If a specific monad transformer stack is used in type signatures, then small changes to the stack can result in large changes to the code. This talk will demonstrate tools from the mtl and the lens library that allow each function's type to describe the required parts of a transformer stack, without depending on the concrete stack itself.

Photo of Brisbane Functional Programming Group (BFPG) group
Brisbane Functional Programming Group (BFPG)
See more events
NICTA Queensland
70/72 Bowen St Spring Hill, Queensland 4000 · Brisbane