Commit Graph

517 Commits

Author SHA1 Message Date
Michael Walker
0c879de41b Add a .travis.yml just to check it builds (todo: tests) 2014-12-20 16:02:09 +00:00
Michael Walker
82e9241686 Add a simple runner which gathers results and schedulings from multiple runs 2014-12-20 11:03:49 +00:00
Michael Walker
86a2617b41 Mutating a CVar only wakes up threads blocked on that CVar. 2014-12-20 10:42:58 +00:00
Michael Walker
df5756c812 Fix a couple of bugs in the Fixed runner 2014-12-20 09:20:48 +00:00
Michael Walker
41050131fb Prevent CVars from leaking out of a Conc computation 2014-12-20 07:45:18 +00:00
Michael Walker
374b8a5c4e Fix doc typo 2014-12-19 21:39:06 +00:00
Michael Walker
00e7a420ee Clarify Fixed.Scheduler docs, and properly detect deadlock in runThreads 2014-12-19 21:34:53 +00:00
Michael Walker
982534f572 Bump base upper bound (silly Ubuntu) 2014-12-19 21:30:38 +00:00
Michael Walker
50944f0d95 Implement a round-robin scheduler 2014-12-19 07:21:00 +00:00
Michael Walker
88535bb5ff Optionally return the final scheduler state 2014-12-19 07:12:22 +00:00
Michael Walker
bc7607ad24 Implement a simple random scheduler 2014-12-19 07:09:26 +00:00
Michael Walker
44593b43cc Re-export and document all primitives from Fixed 2014-12-19 06:59:41 +00:00
Michael Walker
83fb25a6d7 Add a ConcFuture/ConcCVar which is parametrised by a fixed scheduler. 2014-12-19 06:45:50 +00:00
Michael Walker
070d034de9 Implement IO's 'spawn' in terms of other conc primitives 2014-12-19 06:24:50 +00:00
Michael Walker
9361499b01 Drop 'spawnP', as it only really makes sense for NFData 2014-12-18 18:22:50 +00:00
Michael Walker
f2dae49d71 Add ConcFuture/ConcCVar MVar+IO implementations 2014-12-18 11:18:06 +00:00
Michael Walker
8ab914c7d5 Initial commit: a class for monads providing concurrency. 2014-12-18 11:03:17 +00:00