Chapter 4. Introduction to core.async
Long gone are the days when programs were required to do only one thing at a time. Being able to perform several tasks concurrently is at the core of the vast majority of modern business applications. This is where asynchronous programming comes in.
Asynchronous programming—and, more generally, concurrency—is about doing more with your hardware resources than you previously could. It means fetching data from the network or a database connection without having to wait for the result. Or, perhaps, reading an Excel spreadsheet into memory while the user can still operate the graphical interface. In general, it improves a system's responsiveness.
In this chapter, we will look at how different platforms handle this style of programming. More specifically, we will:
- Be introduced to core.async's background and API
- Solidify our understanding of core.async by re-implementing the stock market application in terms of its abstractions...