Parallel Functional Programming With Mutable State