-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
31 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# ... | ||
|
||
## Context | ||
|
||
In the realm of asynchronous programming, the Scala ecosystem offers a set of solid monads constructs and libraries to tackle complex task functionally with elegance and efficiency, like Monix Tasks and Cats Effect. | ||
|
||
However, we are assisting to the increase in adoption of continuation and coroutines in modern runtimes, either exploiting some kind of fibers support, like the project Loom with Virtual Threads, or via code generation, like Kotlin Coroutines. | ||
|
||
## Goals | ||
|
||
The goal of this project is to delve into this field through the lens of direct style, developing few examples (not too complex) leveraging the new strawman library Scala Gears, comparing it with Kotlin's Coroutines and the current implementation of monadic Futures, seeking to analyze aspects such as: | ||
|
||
- ergonomics of the two styles (which one results more thoughtful and/or verbose); | ||
- which of the two approaches has a real advantage in adoption; | ||
- pros and cons of the two styles; | ||
- any limitations and difficulties encountered in using them. | ||
|
||
## The contribution | ||
|
||
The project is built around three main examples, focusing on different aspects. | ||
The first is bout | ||
|
||
|
||
|
||
|
||
|
||
|
||
## References | ||
|
||
## Conclusions | ||
|