-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider dropping the IO capability #219
Comments
If'd you have some opinion regarding this, a 👍 / 👎 would be great - or a comment even more so :) |
The correct question in this regard is - what effects are actually worth tracking this way. John De Goes thinks effect tracking is worthless. Martin thinks |
Yes, I agree about suspensions, We do have resource scopes which remain unchanged in how they are tracked |
The
IO
capability was originally introduced to make signatures more "truthful". It requires any methods that perform I/O directly or indirectly to includeIO
in scope.However, after testing this in Bootzooka, I'm not sure it carries its weight. True, the project is small, but even there the necessity to often add
using IO
was more annoying, than useful. All the places where this was needed where predictable, and it's usually obvious from the method name that I/O is happening anyway.That's why I propose to remove the feature (along with the compiler plugin) from Ox entirely. Similar functionality might be implemented by a separate project, without the integration e.g. with Ox's streams.
The text was updated successfully, but these errors were encountered: