The inaugural Functional Programming Miniconf is being held on Tuesday 2nd February during linux.conf.au 2016, in Geelong, Victoria.
This one-day miniconf is for FP beginners and practitioners alike. Attendees will learn FP concepts, tools and techniques and be challenged to think about programming in new ways and embrace the benefits of FP in their workplaces and open source communities.
Registration
Registration is required to attend linux.conf.au, which runs from 1st - 5th February 2016. Miniconf-only registration is available from $90. Student, hobbyist and professional rates are available for the full conference. See the Registration Information page for details.
Schedule
Time | Presentation |
---|---|
10:40 - 10:55 | Miniconf open |
11:00 | The Essential Tools of Open-Source: Functional Programming, Parametricity, Types by Tony Morris |
11:50 | Functional programming in Python with Toolz and fn.py by Juan Nunez-Iglesias |
12:20 - 13:20 | LUNCH |
13:20 | Data made out of functions by Ken Scambler |
13:55 | The Emperor’s New Closure: FP in Javascript by Nick Moore |
14:30 | Practical Functional Architecture by Jed Wesley-Smith |
15:00 - 15:40 | AFTERNOON TEA |
15:40 | Swift Functional Programming by Paris Buttfield-Addison |
16:15 | Haskell is Not For Production and Other Tales by Katie Miller |
17:05 - 17:20 | LIGHTNING TALKS and miniconf close |
About FP
Functional programming is an approach to programming that models computation as the evaluation of mathematical functions. It draws from fields of math including lambda calculus and category theory and emphasises purity, immutability, abstraction and composability. These qualities underpin FP’s reputation for succinctness, comprehensibility and the ability to move fast and not break things.
In recent years awareness and use of functional programming has grown with the emergence of new languages (e.g. Scala, Clojure, Idris), ongoing advancement of older functional programming languages (e.g. OCaml, Haskell) and other languages adopting features to better facilitate functional programming (e.g. Java 8, C# 3.0).
Some popular open source functional programming languages include:
- Haskell: pure, lazy, statically typed
- Scala: statically typed functional language for the JVM
- Clojure: JVM Lisp dialect with powerful concurrency primitives
- Erlang: dynamically typed with focus on fault tolerance and real-time applications
- F#: statically typed FP for Common Language Infrastructure
Some well-known open source programs written in functional programming languages include:
- xmonad (window manager; Haskell)
- git-annex (Git-based archiving tool; Haskell)
- CouchDB and Riak (databases; Erlang)
- Pandoc (universal document converter; Haskell)
- Lichess (Internet chess server; Scala)
- MirageOS (Unikernel toolkit; OCaml)
- ejabberd (XMPP server; Erlang)
- Puppet (configuration management; Clojure)