Skip to content

Releases: polysemy-research/polysemy

v1.8.0.0

22 Dec 17:28
Compare
Choose a tag to compare

1.8.0.0 (2022-12-22)

Breaking Changes

  • Removed Polysemy.View
  • Removed Polysemy.Law
  • Removed (@) and (@@) from Polysemy
  • Removed withLowerToIO from Polysemy. Use withWeavingToFinal instead.
  • Removed asyncToIO and lowerAsync from Polysemy.Async. Use
    asyncToIOFinal instead.
  • Removed lowerEmbedded from Polysemy.IO. Use embedToMonadIO instead.
  • Removed lowerError from Polysemy.Error. Use errorToIOFinal instead.
  • Removed resourceToIO and lowerResource from Polysemy.Resource. Use
    resourceToIOFinal instead.
  • Removed runFixpoint and runFixpointM from Polysemy.Fixpoint. Use
    fixpointToFinal instead.
  • Changed semantics of errorToIOFinal so that it no longer catches errors
    from other handlers of the same type.

Other Changes

  • Exposed send from Polysemy.
  • Dramatically improved build performance of projects when compiling with -O2.
  • Removed the debug dump-core flag.
  • Introduced the new meta-effect Scoped, which allows running an interpreter locally whose implementation is deferred
    to a later stage.

v1.7.0.0

16 Nov 23:12
Compare
Choose a tag to compare
Release polysemy-v1.7.0.0 and polysemy-plugin-v0.4.2.0

plugin-v0.4.2.0

16 Nov 23:12
Compare
Choose a tag to compare
Release polysemy-v1.7.0.0 and polysemy-plugin-v0.4.2.0

polysemy-plugin v0.4.1.0

22 Oct 23:19
Compare
Choose a tag to compare

The plugin will now use use knowledge of in-scope wanted constraints to help solve otherwise ambiguous Member constraints. For example if we have Members [Embed IO, Embed Identity] r in scope, and are trying to solve (Member (Embed m) r, MonadIO m), the plugin will choose m ~ IO, because that is the only possible instantiation that would typecheck.

GHC 9

16 Jul 12:54
@tek tek
Compare
Choose a tag to compare

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