4 ms·
I think it's not discussed enough how things like language features shape how library APIs are formed. People usually seem to only consider the question "how wo
by sizediterable 5y ago
I think it's not discussed enough how things like language features shape how library APIs are formed. People usually seem to only consider the question "how would I use this feature?" and not "how would the standard library look like with this feature?", which is surprising given how much builtin libraries affect the pleasantness of a language (OK not that surprising since people usually talk about features added to existing languages that already have a standard library.)
One of the things I'm excited to see is the cap-std project for Rust [0] given what Pony [1] has demonstrated is possible with capabilities. I'm also hoping that languages like Koka [2] and multicore OCaml [3] will demonstrate interesting ways to design APIs around algebraic effects.
[0] https://github.com/bytecodealliance/cap-std https://github.com/bytecodealliance/cap-std
[1] https://www.ponylang.io/discover https://www.ponylang.io/discover
[2] https://koka-lang.github.io https://koka-lang.github.io
[3] https://github.com/ocaml-multicore/effects-examples https://github.com/ocaml-multicore/effects-examples