▲ | sparkie 2 days ago | |
They're not so different in that regard. C# `await` can be adapted by making an awaitable and awaiter type[1], which isn't to dissimilar to how a computation expression in F# needs to implement methods `Bind`, `Return`, `Yield`, etc. In both languages these patterns make up for the absence of typeclasses to express things like a functor, applicative, monad, comonad, etc. [1]https://ecma-international.org/wp-content/uploads/ECMA-334_7... |