Stack overflow when rewriting task to itself after get and >>-
The following program causes a stack overflow:
import iTasks Start w = doTasks (onStartup (withShared  loop)) w loop :: (SimpleSDSLens [Int]) -> Task [Int] loop list = get list >>- \xs -> case xs of  -> loop list _ -> loop list
onStartup is just to make testing easier; the bug is also present when the task is exposed over HTTP. It does seem to be required to evaluate
forever (get list) does not crash, but
get list <! not o isEmpty does.
Do I misunderstand the semantics of
If this is a bug, it has not been introduced recently; this behaviour already occurred at 6d7f234624b6ef1781efd6fae8277ff344443427.