maxpow4h/swiftz — pull request #35 by pthariensflame (2014-06-13 04:08:41+00:00)
Title: Indexed store; lens revamp

Lenses now actually work with the Swift toolchain as-is (although `ap`/`<*>` for `IxState` is still problematic, as is making `Box` `@final`). `IxStore` is now a separate type that `Lens` makes use of.

I made sure when making this pull request that all tests passed, and that actually required me to fix a couple of bugs:
- The `Array` `pure` test needed an explicit type annotation to prevent ambiguity.
- Far more seriously, the `MVar` test was dependent on a race condition! I removed the offending check, but the whole test should probably be replaced entirely with something actually deterministic.