úÎz#lÃâ      !"#$%&'()*+,-./0123456789 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b cdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáNone +,->?FTVó$Specifies sub-coeffecting behaviour +Zips two coeffecting computations together |Specifies "parametric coeffect comonads" which are essentially comonads but annotated by a type-level monoid formed by  and  "Coeffect-parameterised version of G, annotated with the 'Unit m' effect, denoting pure contexts !Coeffect-parameterise version of &. The two coeffec annotations s and tV on its parameter computations get combined in the parameter computation by   None&'+-;=>?FSTëmProvides 'reader monad'-like behaviour but as a comonad, using an indexed version of the product comonad "" for the value of variable v, e.g., 'ask (Var::(Var "x"))'  !" !$#" !None+,>?FT!k%!Specifies subeffecting behaviour 'vSpecifies "parametric effect monads" which are essentially monads but annotated by a type-level monoid formed by ) and ( (-Effect of a trivially effectful computation |)*Cominbing effects of two subcomputations |**% provides a way to give instances of ' their own constraints for , + Effect-parameterised version of +D. Annotated with the 'Unit m' effect, denoting pure compuation ,Effect-parameterise version of ,. (bind). Combines two effect annotations f and g$ on its parameter computations into ) %&'+-,)*(. '()*+,-.%&%&'()*+,-None+,FT%»/ Provides a conditional using an  alternation# operation, as opposed to using  Subeffect 1WType family for describing how to combine effects of the two branches of an if 2$Conditional on effectful operations /201/012/012NoneEFST*°3Type-level addition 4$The counter has no semantic meaning 6Provides a way to countc in the type-level with a monadic interface to sum up the individual counts of subcomputations -Define type constructors for natural numbers 7A 7) provides a way to increment the counter 34567654734âã None-FST09Provides a way to count® in the type-level with a monadic interface to sum up the individual counts of subcomputations. Instead of using our own inductive natural number typ, this uses the ä kind from  $The counter has no semantic meaning <A <) provides a way to increment the counter 9:;<9:;=<9:; Safe&',-;<=>?FST0á >?@ABCDEFHGIJFGHEICDLKJB@A>?NM>?@ACDFGH None&'EFT2½U1Provides an indexed version of the |Maybe| monad ORQPSTU UTSOPQRXWVOPQR None&'FT6µY•All monads are parametric effect monads with a trivial singleton-monoid index. This wrapper wraps normal monads into the Effect interface using the M contructor.Wrap regular monads up [Unwrap a monad YZ[YZ[\YZ Safe,F7"]_^`ab`]^_ab]^_Safe -;<=>?EFST7÷]_^`abcdefghijkfhigjkedc]^_`badåæeçèSafe.8ÉopqopqropqSafe*+-9B]_^`abopqstuvwxopqutsvwx]^_`baSafe.9úopqyz{|{|zyopqyézêNone+,-FT>pPData type denoting either a morphisms with source and target types, or identity ‚ƒImplements Bob Atkey's 'parametric monads', and also the Control.Monad.Indexed package, by emulating indexing by morphisms Data type of morphisms €‚ƒ‚ƒ€„€‚ƒNone -;=>?FSTAÓ…ˆProvides a weak reader monad, which can only read an item once. Provides an effect system as a list of the items that have been read ˆˆ for a value of type a FGH…†‡ˆˆ…†‡FGH…†‡None*+,-;<=>?FSTH,‹žProvides a effect-parameterised version of the class reader monad. Effects are sets of variable-type pairs, providing an effect system for reader effects. ŽŽ for a variable v of type a, raising an effect FProvides a way to emulated the ImplicitParams features of GHC/Haskell If s is a subset of t then, s is a subeffect of t   ‹ŒŽ ‹ŒŽ ‹ŒNone&'*+,-;<=>?FSTYµ’4Captures what it means to be a set of state effects “"Calculate just the writer effects ”"Calculate just the reader effects •Parametric effect state monad ™PUpdate reads, that is any writes are pushed into reads, a bit like intersection ëSValue-level remove duplicates from a type-level list and turn different sorts into «| ìRType-level remove duplicates from a type-level list and turn different sorts into «| Describes an effect action s on a value of type a ¦&Provides a wrapper for effect actions ¨ºProvides an effect-parameterised version of the state monad, which gives an effect system for stateful computations with annotations that are sets of variable-type-action triples. +Distinguish reads, writes, and read-writes ¬"Union operation for state effects í~Intersects a set of write effects and a set of read effects, updating any read effects with any corresponding write value ­Read from a variable v of type a. Raise a read effect. ®Write to a variable v with a value of type a. Raises a write effect # ’“”•–—˜™š›œžŸ £¡¢¤¥¦§¨©ª«¬­®# ­®•–—¤¥ž¨©ª«¦§Ÿ ¡¢£¬›”“šœ’˜™•–—™îë ¡¢£¤¥¦§¨©ª«3ž3¤2¥2None &'*-;=>?EFTaEÆMParametric effect update monad. A bit like a writer monad specialised to the ðÄ monoid, providing a single memory cell that can be updated, but with heterogeneous behaviour. Provides an effect system that explains whether a single memory cell has been updated or not É0Update the memory cell with a new value of type a ÃÄÅÆÈÇÉÆÇÈÃÄÅÊÉÃÄÅÆÇÈNone &';<>?EFTb3ËÌÎÍÏÐÑÐÏÌÍÎËÑÒÌÍÎNone -;=>?FSTeßÓ™Provides a kind of writer monad, which can only write an item once (no accumulation), an effect system as a list of the items that have been written ÖWrite a value of type a ÓÔÕÖÖÓÔÕÓÔÕNone&',-;<=>?FSTVl'ñ@Computes supermaps of maps of variable-type mappings, using the ò operation Ø™Provides an effect-parameterised version of the writer monad. Effects are maps of variable-type pairs, providing an effect system for writer effects. ÛWrite to variable v with value of type a Ü;Define the operation for removing duplicates using mappend   ØÙÚÛØÙÚÛ  ñóØÙÚô !""#$%&'()#)$)*)+),)-./0123456789:;<=>?@AB675CDEFGHIJKLMNOP L L Q O R S T U V W + X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q C D E F rstuvwxyz{|}~€‚ƒ„…†‡ˆ‰…†Š‹ŒŽhh‘’=“”;’=•–”—˜™€š‚'›œ""žŸN ¡¡‘¢£…†¤¥¦§¨©ª«¬­®¯°±²³´µ¶·‚‚¸¡ƒ¹†º»¼[\MN]½¾¢¿†ÀÁÁ†ÃÄÅÆÇÈLQÉtÊuˈ‰ÌÍÎÏÐÑÒÓÔÑÒÕÖ×+effect-monad-0.8.0.0-4oZy7r4khCs8Q9wnX7M21dControl.Effect.WriterControl.Effect.ReaderControl.Effect.StateControl.CoeffectControl.Coeffect.CoreaderControl.EffectControl.Effect.CondControl.Effect.CounterControl.Effect.CounterNatControl.Effect.Helpers.ListControl.Effect.MaybeControl.Effect.MonadControl.Effect.Parameterised&Control.Effect.Parameterised.SafeFiles"Control.Effect.Parameterised.State,Control.Effect.Parameterised.ExtensibleState(Control.Effect.Parameterised.AtomicState$Control.Effect.ParameterisedAsGradedControl.Effect.ReadOnceReaderControl.Effect.UpdateControl.Effect.VectorControl.Effect.WriteOnceWriterGHCTypeLitsghc-prim GHC.TypesSymbol.type-level-sets-0.8.7.0-CckS0iz4aD1LxocOrBwjyZ Data.Type.Mapunion:->MappingUnionVarExtEmptyMapIsMap UnionableSubmap Data.Type.SetSetSplitSortSortable Subcoeffectsubco CoeffectZipMeetCzipInvczipCoeffectInvUnitPlusextractextend IxCoreaderIxR runCoreaderask$fCoeffectZip[]IxCoreader$fCoeffect[]IxCoreader SubeffectsubEffectreturn>>=>>failCondAltInvAltifM:+CounterSZtick$fEffectTYPECounterforget$fEffectNatCounterLookUpAlookupALookuplookupLookupTsplit:++ListNilConsappendlengthL $fSplit:ys $fSplit[]xs $fLookUpAkk:y$fLookUpATYPEk:xIMaybeINothingIJustIDynUTF$fCondTYPEIMaybe$fEffectTYPEIMaybe $fShowIMaybeMonadWrapunWrap$fEffectTYPEMonadPMonad ifThenElseSt SafeHandle SafeFilesopenFilehClosehGetCharhPutCharhIsEOF runSafeFiles$fPMonadTYPESafeFiles $fMemberx: $fMemberx:0StaterunState$fPMonadTYPEStateUpdatePutGetgetputmodifyOpenClosed $fShowClosed $fShowOpenMorphMId$fEffectMorphTReaderR runReader$fCond[]Reader$fEffect[]Readermerge$fSubeffect[]ReaderstStateSetWritesReads IntersectRUnionSSetLike:!XYActionEffWRW $fShowAction $fShowAction0 $fShowAction1 $fShowVar $fShowVar0 $fShowVar1 $fShowVar2 $fShow:->$fShow:!$fNubableTYPETYPE::$fNubableTYPEk:as'$fNubableTYPEk:as'0 $fNubablekk::$fNubablekk[][]$fUpdateTYPETYPE::$fUpdateTYPEk:as'$fUpdateTYPEk:as'0 $fUpdatekk::$fUpdatekkxs[]$fEffect[]State runUpdateNoPut$fEffectMaybeUpdateAddVector$fEffectTYPEVector WriteOnce runWriteOnce$fEffect[]WriteOnceWriter runWriter $fNubable:$fEffect[]Writer $fSupermap:: $fSupermap[]:$fSupermap[][]$fSubeffect[]WriterstNat unsafeHandle unSafeFilesNubableNub intersectRupdatenubbaseGHC.BaseMaybeSupermapmemptysupermap