diff options
Diffstat (limited to 'docs/ASYNC.md')
-rw-r--r-- | docs/ASYNC.md | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/docs/ASYNC.md b/docs/ASYNC.md new file mode 100644 index 0000000..5b9fa7e --- /dev/null +++ b/docs/ASYNC.md @@ -0,0 +1,17 @@ +# Asynchronous Programming + +I don't know enough about asynchronous programming to get started with this section. + +Existing systems to learn from: +- https://github.com/status-im/nim-chronos +- https://journal.stuffwithstuff.com/2015/02/01/what-color-is-your-function/ +- https://tokio.rs/tokio/tutorial +- https://morestina.net/blog/1686/rust-async-is-colored +- https://ziglearn.org/chapter-5/ +- https://kristoff.it/blog/zig-colorblind-async-await/ +- https://en.wikipedia.org/wiki/Async/await +- https://old.reddit.com/r/elixir/np688d/ + +Asynchronous programming is hard to design and hard to use. Even Rust doesn't do a great job. It *shouldn't* need built-in language support - we should be able to encode it as a type and provide any special syntax via macros. Note that async is not just threading! threading is solved well by Rust's rayon and Go's (blugh) goroutines. + +Is async worth having separate from effects? |