effect-sessions-1.0: Sessions and session types for Concurrent Haskell

Control.Effect

Synopsis

# Documentation

class Effect m where Source

Specifies "parametric effect monads" which are essentially monads but annotated by a type-level monoid formed by `Plus` and `Unit`

Minimal complete definition

Associated Types

type Unit m :: k Source

Effect of a trivially effectful computation |

type Plus m f g :: k Source

Cominbing effects of two subcomputations |

type Inv m f g :: Constraint Source

`Inv` provides a way to give instances of `Effect` their own constraints for `>>=`

Methods

return :: a -> m (Unit m) a Source

Effect-parameterised version of `return`. Annotated with the 'Unit m' effect, denoting pure compuation

(>>=) :: Inv m f g => m f a -> (a -> m g b) -> m (Plus m f g) b Source

Effect-parameterise version of `>>=` (bind). Combines two effect annotations `f` and `g` on its parameter computations into `Plus`

(>>) :: Inv m f g => m f a -> m g b -> m (Plus m f g) b Source

Instances

 Effect [Map Name Session] Process Source

class Subeffect m f g where Source

Specifies subeffecting behaviour

Methods

sub :: m f a -> m g a Source
{"ft_lang_label":"__label__en","ft_lang_prob":0.55032504,"math_prob":0.8009343,"size":699,"snap":"2022-05-2022-21","text_gpt3_token_len":199,"char_repetition_ratio":0.1410072,"word_repetition_ratio":0.15625,"special_character_ratio":0.27896994,"punctuation_ratio":0.08527132,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.9509094,"pos_list":[0],"im_url_duplicate_count":[null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2022-05-22T05:20:26Z\",\"WARC-Record-ID\":\"<urn:uuid:eed0fb06-d010-4922-b124-04f96a1eef6d>\",\"Content-Length\":\"7611\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:68469d2d-fcd4-4eb7-8b91-69e86508a3af>\",\"WARC-Concurrent-To\":\"<urn:uuid:edf93d53-5b97-4e96-a81b-5cdf918e89b3>\",\"WARC-IP-Address\":\"146.169.13.6\",\"WARC-Target-URI\":\"https://www.doc.ic.ac.uk/~dorchard/popl16/sessions/doc/html/effect-sessions/Control-Effect.html\",\"WARC-Payload-Digest\":\"sha1:3GL7MJVXVS5MHI537GPWVAPLEKGLOG3A\",\"WARC-Block-Digest\":\"sha1:2IJIEOOYJVWQRC4M6MQZ6RGVTEPKGQ6N\",\"WARC-Identified-Payload-Type\":\"application/xhtml+xml\",\"warc_filename\":\"/cc_download/warc_2022/CC-MAIN-2022-21/CC-MAIN-2022-21_segments_1652662543797.61_warc_CC-MAIN-20220522032543-20220522062543-00070.warc.gz\"}"}