jhellerstein / fluent

Bloom + C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fluent Build Status

Fluent = Bloom + C++.

Getting Started

There are a handful of things you'll have to install for yourself:

  1. Some miscellaneous dependencies: libtool.
  2. A C++ compiler that supports C++14. If you're trying to install an up-to-date g++ on linux, this tutorial might be helpful. If you're tying to install an up-to-date clang++ on linux, this site might be useful.
  3. CMake version 3.0 or better.
  4. PostgreSQL and libpq.
  5. Redis, libhiredis (sudo apt-get install libhiredis-dev), and libev (sudo apt-get install libev-dev).

Once you have these installed, then just build the code! The build process will install and build the rest of the dependencies for you!

# Building
./scripts/build.sh Debug     # build the code in debug mode
./scripts/build.sh Release   # build the code in release mode
./scripts/build.sh Debug 4   # build the code in debug mode with 4 cores
./scripts/build.sh Release 4 # build the code in release mode with 4 cores

# Testing
./build/bin/ra_logical_cross_test # run a test
./build/bin/common_macros_test    # run another test
(cd build && ctest -L UNITTEST)   # run all the tests

# Benchmarking
./build/bin/ra_physical_iterable_bench # run a benchmark
(cd build && ctest -L BENCHMARK)       # run all the benchmarks

# Generating Tags
./scripts/generate_tags.sh

# Everything
./scripts/build.sh Debug 4 && \
    ./scripts/generate_tags.sh && \
    (cd build && make test)

# Run a chat server listening on port 8000.
./build/bin/examples_chat_noop_server 'tcp://*:8000'

# Run a chat client on port 8001 with nickname "zardoz"
./build/bin/examples_chat_noop_client \
    tcp://0.0.0.0:8000 tcp://0.0.0.0:8001 zardoz

Design Documents

For more detailed documentation describing Fluent, refer to the following documents:

About

Bloom + C++


Languages

Language:JavaScript 84.4%Language:C++ 13.3%Language:Python 1.0%Language:CMake 0.5%Language:CSS 0.4%Language:Shell 0.3%Language:HTML 0.1%Language:C 0.0%Language:Makefile 0.0%Language:Protocol Buffer 0.0%