Parallel machine

From HaskellWiki

There are two reasonable ways to define an applicative functor instance for lists. Both of them simulate kinds of parallel computers:

  • The plain instance simulates a non-deterministic computer. This instance can also be generalized to monads.
  • The applicative functor instance of the ZipList wrapper simulates a SIMD (single-instruction multiple-data) computer.