Skip to content

thecapn32/carrow

 
 

Repository files navigation

carrow

C non-blocking IO framework inspired by Haskell's arrow and monads.

From haskell's wiki:

Arrows, or Freyd-categories, are a generalization of Monads.

They can do everything monads can do, and more. They are roughly comparable to monads with a static component.

Build

Dependencies

git clone [email protected]:pylover/carrow.git
cd carrow 
mkdir build
cd build
cmake ..
make clean all

Running examples

Examples Dependencies:

cd path/to/carrow/build
make run_tcpclient
make profile_tcpclient

make run_tcpserver
make profile_tcpserver

make run_timer
make profile_timer

make run_sleep
make profile_sleep

Contirbution

pip install prettyc
cd path/to/carrow/build
make lint

Running tests

Dependencies
make test

Coding style

  • Please preserve two blank lines between every definition at the root of the module/file.

About

C monadic arrow library.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 91.9%
  • CMake 8.1%