Skip to content

FP in Scala 5&6 + Purescript - An Experience Report

Photo of Ben Kolera
Hosted By
Ben K. and Nick P.
FP in Scala 5&6 + Purescript - An Experience Report

Details

FP in Scala - Chapters 5 & 6 - John Vial

This talk will be a brief overview of Chapters 5 & 6 from Functional Programming in Scala.

In Chapter 5 we look at Lazy evaluation and how this can allow you to operate over data structures of inifinite size.

In Chapter 6 we explore what it means to have state in a function program, and discover that it really just boils down to adding another parameter to the function and then applying an abstraction so that you can write functions that fit together without needing to know about the plumbing.

Purescript - An Experience Report - Ben Kolera

One of the first tasks that I got asked to do at Ephox was to construct a proof of concept new feature in one of our editors. This involved integrating an open source library that kinda met the mark, changing and building up new code around it until it became a viable tool for exploring the idea with non-technical staff and customers.

As someone hired as a Scala developer and devops guy too far lost into the pure FP coolaid, I quickly found myself ill-equipped to develop complicated new features on the base of mutabily, no types and unbridled side effects.
This talk outlines Ben's experiences and learnings going from a javascript feature codebase codebase and replacing it with purescript. It won't teach you how to code purescript, but it should share enough war stories and insight to help you make the decision to learn and use it yourself.

Unfortunately given that the PoC was for a brand new feature Ben cannot share the actual code or talk about the feature in detail, but we'll hopefully have enough contrived examples to convey the message. If not, I'm happy to answer lots of questions if there are gaps. :)

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