Skip to content
A distributed computation monad transformer
Haskell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
src/Distrib
test
.gitignore
.travis.yml
ChangeLog.md
LICENSE
README.md
Setup.hs
butter.cabal
package.yaml
stack.yaml

README.md

Build Status

Butter

For easily spreading around monadic computation

Examples

  • Example Language usage in test/first/Main.hs
  • Example Protocol usage in test/protocol/Main.hs

Current Language Features

Actor Monad Transformer that supports

  • self
  • send
  • receive
    • selective based on type
    • yields on empty receive or type mismatch
  • spawn
    • built on Forkable-Monad and forkIO
  • lift
  • named pids
  • connect to remote
    • send via named

Current Library Features

  • Protocol (OTP Genserver like typeclass)
    • explicit State type family
    • explicit Monadic Context type family
    • Results API

Future Core Language Features

  • monitor
  • serializable computation typeclass
    • spawn remote
    • monitor remote
  • query remote
  • encrypted message passing by default
    • config to change encode and decode

Future Library Features

  • quasiquoter / convenience Syntax
  • OTP
    • supervisor trees
  • haddock documentation
  • versioned tutorial series
You can’t perform that action at this time.