Я хочу создать различные классы побочных эффектов, поэтому я могу отметить некоторые побочные эффекты более безопасными, чем другие.Вывести Monad из Fay newtype, чтобы включить обозначение
Я хотел бы создать NewType над Fay
побочных эффектов монады и использовать его в делать обозначения, поэтому я заявляю это так:
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE PackageImports #-}
import "base" Control.Monad
newtype ReadFay a = ReadFay { readFay :: Fay a } deriving Monad
эту точку , компилятор не может найти пакет base
. Можно как-нибудь это сделать?
я все еще могу создавать свои собственные версии >>=
, return
и т.д. для ReadFay
, но, будучи в состоянии использовать его в делать обозначения было бы хорошо.
Или, есть ли лучший способ, как создать разные классы побочных эффектов, чем этот мой подход?