courier: A message-passing library for simplifying network applications

[ distributed-computing, library, message-oriented, mit, network, program ] [ Propose Tags ]

Inspired by Erlang's simple message-passing facilities, courier provides roughly similar capabilities. Applications simply create one or more endpoints, bind each to a transport using a given name, then can freely send / receive messages to other endpoints just by referencing the name each endpoint bound to its transport.

Note that while the simplicity is inspired by Erlang, the actual semantics of a receive operation are not: receive just returns the next message delivered to an endpoint by a transport. There is no attempt to perform pattern-matching on a range of alternatives, and thus enabling out-of-order receipt. Consequently, all messages delivered to an endpoint will always be received in the order delivered. In this sense, endpoints are more akin to channels in Go but without the strict typing.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.1.0.4, 0.1.0.5, 0.1.0.6, 0.1.0.7, 0.1.0.8, 0.1.0.9, 0.1.0.10, 0.1.0.11, 0.1.0.12, 0.1.0.13, 0.1.0.14, 0.1.0.15, 0.1.1.1, 0.1.1.2, 0.1.1.3, 0.1.1.4, 0.1.1.5
Dependencies async, base (>=4 && <5), bytestring, cereal, containers, hslogger, network, network-simple, stm, text [details]
License MIT
Copyright Copyright (c) 2013 Phil Hargett
Author Phil Hargett
Maintainer phil@haphazardhouse.net
Category Network, Distributed Computing, Message-Oriented
Home page http://github.com/hargettp/courier
Source repo head: git clone https://github.com/hargettp/courier.git
Uploaded by PhilHargett at 2014-01-18T21:53:12Z
Distributions
Reverse Dependencies 2 direct, 0 indirect [details]
Downloads 17529 total (39 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]