polysemy v1.7.0.0 Release Notes

Release Date: 2021-11-16 // 2 months ago
  • ๐Ÿ’ฅ Breaking Changes

    • โž• Added interpreters for AtomicState that run in terms of State.
    • โœ‚ Removed MemberWithError
    • โœ‚ Removed DefiningModule

    Other Changes

    • The internal ElemOf proof is now implemented as an unsafe integer, significantly cutting down on generated core.
    • Polysemy no longer emits custom type errors for ambiguous effect actions. These have long been rendered moot by polysemy-plugin, and the cases that they still exist are usually overeager (and wrong.)
    • As a result, the core produced by polysemy is significantly smaller. Programs should see a reduction of ~20% in terms and types, and ~60% in coercions.

Previous changes from v1.6.0.0

  • ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿ—„ Deprecate traceToIO and replace it with traceToStdout and traceToStderr
    • ๐Ÿ‘Œ Support GHC 9.0.1

    Other Changes

    • โž• Added the combinator insertAt, which allows adding effects at a specified index into the effect stack
    • โž• Added Semigroup and Monoid for Sem