https://github.com/systemfw/tl-summit-philly-2019
https://github.com/systemfw/tl-summit-philly-2019
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/systemfw/tl-summit-philly-2019
- Owner: SystemFw
- Created: 2019-04-03T13:22:21.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-08-20T12:53:01.000Z (over 6 years ago)
- Last Synced: 2025-02-28T16:00:32.930Z (about 1 year ago)
- Language: Scala
- Size: 3.26 MB
- Stars: 7
- Watchers: 5
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ref + Deferred: from counters to concurrent FSMs
Slides for my talk at the Typelevel Summit 2019, in Philadelphia. You can look at them online at https://systemfw.github.io/TL-Summit-Philly-2019/#/ (use the spacebar to advance). The video for the talk is [here](https://www.youtube.com/watch?v=-dLp3u6y2DQ), although unfortunately the slides weren't captured and you have to look at them side to side. Have a look at `Examples.scala` for the code.
## Description
fs2 offers a very powerful and composable set of concurrent combinators and data structures, which are all built out of two deceptively simple primitives: Ref and Deferred.
This talk will explain what they are, the design principles behind them, and how to use them to build your own business logic abstractions. In the process, we will discover a general pattern in the form of concurrent state machines, and see how it integrates with final tagless on one hand, and streaming control flow on the other.