Video description
In this Communicating Sequential Processes with core.async training course, expert author Timothy Baldridge will teach you the basics of core.async. This course is designed for users that already have a working knowledge of Clojure and ClojureScript.
You will start by learning how to create channels, then jump into creating and using threads. From there, Timothy will teach you how to combine and split channel streams, work with transducers, and the pipeline abstraction. This video tutorial also provides a quick tour of core.async internals, including how channels are modeled, how alt handlers interact with channels, and how threads interface with channels. Finally, you will learn about non-blocking channel operations and how to put it all together.
Once you have completed this computer based training course, you will be fully capable of writing your own applications that take advantage of the core.async library.
Table of contents
-
Introduction
- What To Expect 00:01:23
- About The Author 00:00:38
- How To Use Your Working Files 00:01:15
-
Channels
- Creating Channels 00:03:10
- Async Operations On Channels 00:01:45
- Buffers 00:04:41
- Closing Channels 00:03:10
-
Threads
- Creating And Using JVM Threads 00:03:05
- Creating And Using Lightweight Threads 00:05:26
-
Practical Application Of core.async Basics
- Interfacing With A HTTP Client 00:02:51
- Interfacing With A DB Client 00:05:39
- Interfacing With Blocking I/O 00:02:14
-
Backpressure
- Introduction To Backpressure 00:03:23
- Tuning Backpressure 00:06:19
- Backpressure Pitfalls 00:03:24
-
Choosing Channels With alts!
- Introduction To alts! And alt! 00:06:22
- alt! Defaults 00:01:54
- Channel Priority With alts 00:02:29
-
Combining And Splitting Channel Streams
- Overview Of The Merge Function 00:02:30
- Overview Of mult And tap 00:02:12
- Overview Of pub/sub 00:03:36
- Draining Channels With reduce And into 00:02:34
-
A Short Introduction To Transducers
- The Problem With Reducer Functions 00:05:07
- The Three Parts Of Transducer Functions 00:03:57
- Adding Transducer Logic To Channels 00:03:18
-
The Pipeline Abstraction
- Pipeline And Pipeline-Blocking Overview 00:03:32
- Pipeline-Async Overview 00:03:45
- Parallel Workflows With Transducers And Pipelines 00:03:26
-
A Quick Tour Of core.async Internals
- How Channels Are Modeled 00:08:26
- How alt Handlers Interact With Channels 00:06:19
- How Go Blocks Interface With Channels 00:04:38
- How Threads Interface With Channels 00:02:35
-
Non-Blocking Channel Operations
- An Overview Of offer! And poll! 00:02:39
- Putting It All Together
-
Wrap Up
- Wrap Up And Thank You 00:00:25
Product information
- Title: Communicating Sequential Processes with core.async
- Author(s):
- Release date: July 2015
- Publisher(s): Infinite Skills
- ISBN: 9781771374293
You might also like
book
Learning ClojureScript
Master the art of agile single page web application development with ClojureScript About This Book Set …
video
Learning ClojureScript
In this Learning ClojureScript training course, expert author David Eisenberg teaches you how to write functional …
book
Clojure: High Performance JVM Programming
Explore the world of lightning fast Clojure apps with asynchronous channels, logic, reactive programming, and more …
book
Clojure Polymorphism
Learn when and how to use Clojure's polymorphic features to develop efficient multithreaded applications Key Features …