Time-warp is a library for emulating distributed systems.
Time-warp consists of 2 parts:
MonadTimed
library, which provides time (alathreadDelay
) and threads (alaforkIO
,throwTo
and others) management capabilities.MonadTransfer
&MonadDialog
, which provide robust network layer, allowing nodes to exchange messages utilizing user-defined serialization strategy.
All these allow to write scenarios over distributed systems, which could be launched either as real program or as fast emulation with manually controlled network nastiness.
Work on emulation itself is yet WIP. For emulation support in old interface see version 0.3.
Build instructions ↑
Run stack build
to build everything.
Usage ↑
You can find examples in corresponding directory.
Issue tracker ↑
We use YouTrack as our issue tracker. You can login using your GitHub account to leave a comment or create a new issue.
For Contributors ↑
Please see CONTRIBUTING.md for more information.
About Serokell ↑
Time-warp is maintained and funded with ❤️ by Serokell. The names and logo for Serokell are trademark of Serokell OÜ.
We love open source software! See our other projects or hire us to design, develop and grow your idea!