Track: Head-to-Tail Functional Languages


Day of week:

Free-range Monads, Tackling immutablity, tales from production, and more...

Track Host:
Amanda Laucher
Consultant @ParivedaSolutions
Amanda Laucher has been working with technology her entire life. Some of her favorite childhood memories include working with punch cards alongside her grandmother or learning Morse code from her dad. Solving complex business problems with code is her passion. She is currently working for Neo Technology and using the graph database Neo4j. You are likely to find her discussing intricacies of languages and type systems, development processes or American football.
10:35am - 11:25am

by Jonathan Graham
Software Developer @8thLightInc and Co-Founder @MinedMinds

Note: This talk replaces a cancellation for Creating a distuptive property portal with Clojure.

Every language has many pre-defined core functions, so we can quickly get on building what we really want. This ease of use does come with a cost, though. Do we really know the power of the magic that we are wielding? In this presentation we will look at how to implement our own versions of the Clojure functions reduce, count, filter, map and pmap. The pace will start...

11:50am - 12:40pm

by Aaron Bedra
Chief Security Officer @Eligible & former member of Clojure/Core

We spend quite a bit of time (or should) testing the systems that we build. Early on in a systems life this time is spent creating tests and exploring the structure and design of our systems. As systems age the majority of this time is spent maintaining those tests as the system takes new shapes. Our approach to testing heavily impacts how much time is necessary to keep our tests in line and useful.

This talk will focus on an approach to testing that focuses on describing your system...

1:40pm - 2:30pm

by Richard Kasperowski
Author of The Core Protocols: A Guide to Greatness

Open Space
2:55pm - 3:45pm

by Andrea Magnorsky
Currently @Workday, programming language enthusiast and founding member of FSSF

F#, just like other non-pure functional languages, allows you find the sweet spot between FP practices and OO language pragmatism. Most of the advanced features of F# give you the power to change the language and to introduce a higher level of abstraction to your code. In this talk, we will discuss active patterns, computation expressions, parsers, using type providers and more. These language features help you make your code simpler and easier to maintain.

4:10pm - 5:00pm

by Richard Dallaway
Co-author of "'Essential Slick", Author of "the Lift Cookbook"

There's a perception that Scala is too complicated.
In part that may come from cryptic compiler errors and hard to understand types.
You might be left wondering: what's the point?
Why am I trying to hack my way through cruft?

1. There's a way of writing simple Scala. A few straightforward ideas can be used again and again.You're using the power and flexibility of Scala, but in a sane way. This might not be the Scala you've heard about.

2. The type system enables...

5:25pm - 6:15pm

by Runar Bjarnason
Author of Functional Programming in Scala

Scalaz-Stream (soon to be called "FS2" or "Functional Streams for Scala") is a library that lets us write compositional, modular, safe, and efficient asynchronous I/O using an expressive purely functional API. In this hands-on talk we'll see how to get started with the library, cook up some examples, and look at how we can combine functional streams into large distributed systems.


Covering innovative topics

Monday, 7 March

Tuesday, 8 March

Wednesday, 9 March