lazy-async (hackage): Sometimes we have a bunch of I/O actions that might not end up being needed, and we don't want to simply run all the actions upfront. We also don't want to simply run an action right before its result is needed, because it might be needed in more than one place, which opens the possibility of unnecessarily running the same action more than once. In situations like these, we use LazyAsync.
Keywords: concurrency|library|mit|haskell|haskell-library