Îõ³h&6ïÀ      !"#$%&'()*+,-./0123456789:;<=>? Safe-Inferred1¦ HasChorLocated values.a @ l represents a value of type a at location l.HasChorA located value a @ l from location l's perspective.HasChorA located value a @ l from locations other than l's perspective.HasChorType-level locations.HasChorTerm-level locations.HasChor7Convert a type-level location to a term-level location.HasChor Wrap a value as a located value.HasChorUnwrap a located value.Note:: Unwrapping a empty located value will throw an exception.HasChor/Define a location at both type and term levels.   Safe-Inferredú HasChor Freer monads.A freer monad  Freer f aà represents an effectful computation that returns a value of type a. The parameter  f :: * -> *Ú is a effect signature that defines the effectful operations allowed in the computation.  Freer f a) is called a freer monad in that it's a @ given any f. HasChorA pure computation. HasChor2An effectful computation where the first argument f b8 is the effect to perform and returns a result of type b; the second argument b -> Freer f aè is a continuation that specifies the rest of the computation given the result of the performed effect. HasChor$Lift an effect into the freer monad. HasChorÁInterpret the effects in a freer monad in terms of another monad.   Safe-Inferred ’ HasChor&A message transport backend defines a  configuration of type c? that carries necessary bookkeeping information, then defines c as an instance of  and provides a  function.HasChor'Monad that represents network programs.HasChorEffect signature for the  monad.HasChorLocal computation.HasChorSending.HasChor Receiving.HasChor Broadcasting.HasChorPerform a local computation.HasChorSend a message to a receiver.HasChor Receive a message from a sender.HasChor(Broadcast a message to all participants.   Safe-Inferred) D HasChorãEach location is associated with a message buffer which stores messages sent from other locations. !"#$ !"#$ Safe-Inferred)1 e)HasChorÞThe HTTP backend configuration specifies how locations are mapped to network hosts and ports.-HasChorìCreate a HTTP backend configuration from a association list that maps locations to network hosts and ports. &'()+*,-./0 ,)+*('-.&/0 Safe-Inferred)ØG 2HasChor!Monad for writing choreographies.3HasChorEffect signature for the 2 monad. m0 is a monad that represents local computations.7HasChorA constrained version of : that only unwraps values located at a specific location.8HasChorRun a 2 monad directly.9HasChorEndpoint projection.:HasChor0Perform a local computation at a given location.;HasChor.Communication between a sender and a receiver.<HasChor>Conditionally execute choreographies based on a located value.=HasChor A variant of ;. that sends the result of a local computation.>HasChor A variant of <Ö that conditonally executes choregraphies based on the result of a local computation.:HasChor*Location performing the local computation.HasChor;The local computation given a constrained unwrap funciton.;HasChorÀA pair of a sender's location and a value located at the senderHasChorA receiver's location.<HasChor4A pair of a location and a scrutinee located on it.HasChorØA function that describes the follow-up choreographies based on the value of scrutinee.=HasChor7A pair of a sender's location and a local computation.HasChorA receiver's location.>HasChor.A pair of a location and a local computation.HasChoræA function that describes the follow-up choreographies based on the result of the local computation. 23654789:;<=> 73654289:;<=> Safe-InferredÚË?HasChor4Run a choreography with a message transport backend.'()-28:;<=>?2:;=<>(')-8?Á      !"#$%%&'()*+,-./00123*456789:;<=>?@ABCDEFGÈ&HasChor-0.1.0.1-G22J45hf9jdDmukv9D3IRCChoreography.LocationControl.Monad.FreerChoreography.NetworkChoreography.Network.LocalChoreography.Network.HttpChoreography.Choreo Choreography@WrapEmptyLocTyLocTmtoLocTmwrapunwrapmkLocFreerReturnDotoFreer interpFreer $fMonadFreer$fApplicativeFreer$fFunctorFreerBackend runNetworkNetwork NetworkSigRunSendRecvBCastrunsendrecv broadcast LocalConfiglocToBufMsgBufnewEmptyMsgBuf mkLocalConfiglocsrunNetworkLocal$fBackendLocalConfig RecvChansPortHost HttpConfiglocToUrlAPI mkHttpConfig mkRecvChansrunNetworkHttp$fBackendHttpConfigChoreo ChoreoSigLocalCommCondUnwrap runChoreoepplocally~>cond~~>cond'runChoreographybaseGHC.BaseMonad