Skip to content
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

Properly define (and maybe formalise) Tasks #178

Open
3 tasks
robotlolita opened this issue Feb 18, 2018 · 0 comments
Open
3 tasks

Properly define (and maybe formalise) Tasks #178

robotlolita opened this issue Feb 18, 2018 · 0 comments

Comments

@robotlolita
Copy link
Member

As mentioned in #177, Tasks are still pretty ad-hoc and experimental, so a lot of edge cases may remain when dealing with concurrent execution. We should try to give people better tools to understand Task-based code, reason about concurrency with them, debug concurrency problems in Task-based code, and, of course, get rid of any bugs that remains in the implementation.

To this end we'll need:

  • A specification for Task's semantics;
  • A way of identifying tasks and transformations, so people can figure out where things are failing (think of this as a stack-trace, but for task interactions);
  • Some model checking for finding race bugs, and better tests in other areas -- the interaction of task transformation with cancellation wasn't well tested;

This work subsumes the one in #153

robotlolita added a commit that referenced this issue Aug 11, 2018
Future, Conversions, Lambda, Fantasy-Land, Result, and Validation modules are now considered stable.

Task still needs some work to reach that state (see #178)
robotlolita added a commit that referenced this issue Aug 13, 2018
Future, Conversions, Lambda, Fantasy-Land, Result, and Validation modules are now considered stable.

Task still needs some work to reach that state (see #178)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant