Date: 2010-01-21 Time: 12:00 Room: BBL room 079 ----+++ Speaker: Paul Visschers ----+++ Title: Nix: a functional package manager ----+++ Abstract One of the most useful features of most Linux distributions is their package manager. This installs, updates and removes packages (which usually contain programs, libraries and/or services) and handles dependencies between them. Most package managers use a stateful approach to this, destructively updating packages as they are upgraded. This introduces similar problems to those in stateful (imperative) programming. Nix is a package manager that instead uses a functional approach. In this talk I will discuss the benefits of this approach, describe how Nix works under the hood, how the same approach is used and extended in the Linux distribution NixOS. I will also talk about recent work, such as the new module system.