3 ms·
More about this can be found in the literature on using capabilities to provide/implement effect systems. For example: - "Capabilities: Effects for Free": http
by catern 5y ago
More about this can be found in the literature on using capabilities to provide/implement effect systems. For example:
- "Capabilities: Effects for Free": https://www.cs.cmu.edu/~aldrich/papers/effects-icfem2018.pdf https://www.cs.cmu.edu/~aldrich/papers/effects-icfem2018.pdf
- "Effects as Capabilities: Effect Handlers and Lightweight
Effect Polymorphism" https://dl.acm.org/doi/pdf/10.1145/3428194 https://dl.acm.org/doi/pdf/10.1145/3428194
I think this is a quite effective approach and I hope it is used more. In some sense it's just good coding style, which lets you do effect-system-style reasoning in any language.
- nerdponx 5y agoI believe Pony has something like a capability system, where a function can only perform certain actions if it is tagged with specific capabilities. Edit: I'm not sure it's the same idea as the articles you linked, but they reminded me of these two conference talks on Pony: https://youtu.be/u1JfYa413fY https://youtu.be/u1JfYa413fY https://youtu.be/sV68Q8PCEdg https://youtu.be/sV68Q8PCEdg