• This repository has been archived on 13/May/2019
  • Stars
    star
    436
  • Rank 99,877 (Top 2 %)
  • Language
    C++
  • License
    MIT License
  • Created over 9 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A toolkit for modern C++ development

This Repository is Unmaintained

This repository is currently unmaintained and will not see further development here.

Atria

Atria is a toolkit for modern C++ development.

It provides core components that extend the standard library capabilities. It provides various libraries of general interest, in the spirit of the STL, Boost, Adobe Source Libraries, or Facebook's Folly and Fatal.

This is an open source project. You're encouraged to use it, modify it, and redistribute it.

Status

Atria is written in standard C++11 and compiles with recent versions of GCC and Clang.

This project is under active development and its API is not stable yet. Thus it is not suitable for most production systems. However it is thoroughly tested, and we encourage you to try it. Your feedback is very welcome.

Modules

  • atria::prelude provides basic functional programming tools in the spirit of those in Clojure core and Haskell's Prelude.

  • atria::variant provides tools for better usability of Boost.Variant and Eggs.Variant and is customizable to other sum type implementations.

  • atria::meta provides several metaprogramming tools, including some Boost.MPL adaptors for several variadic types and concept checking facilities.

  • atria::estd provides C++11 compatible implementations of some C++14 and beyond standard library components.

  • atria::xform provides an efficient C++ implementation of transducers, a concept introduced in Clojure by Rich Hickey.

  • atria::funken provides a experimental library for writing epochal and functional data-models.

  • atria::testing provides testing tools and frameworks for writing spies, mocks, micro-benchmarks and more.

Documentation

Reference documentation can be browsed here.

It can be generated by executing in the project directory: doxygen doxy/doxygen.config

Talks

Dependencies

Other dependencies are vendored via submodules. Make sure to run git submodule update --init --recursive before building.

License

Atria is distributed under the MIT license (see LICENSE).

Copyright (c) 2014, 2015 Ableton AG, Berlin

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

More Repositories

1

link

Ableton Link
C++
1,075
star
2

push-interface

The Ableton Push 2 MIDI and display interface manual.
641
star
3

m4l-connection-kit

Max for Live Connection Kit
C++
491
star
4

maxdevtools

Python
255
star
5

aqt-stylesheets

Apply CSS style sheets to QML applications
C++
214
star
6

LinkKit

iOS SDK for Ableton Link, a new technology that synchronizes musical beat, tempo, and phase across multiple applications running on one or more devices.
Objective-C++
150
star
7

push2-display-with-juce

C++
145
star
8

AudioPerfLab

An app for exploring real-time audio performance on iPhone and iPad.
C++
132
star
9

aqt-cassowary

Use the Cassowary constraint solver in QML applications
QML
54
star
10

ableton.github.io

Ableton's GitHub.io website
Sass
46
star
11

go-travis

Go library for accessing the Travis CI API
Go
33
star
12

python-pipeline-utils

Jenkins shared pipeline library for Python-related utilities
Groovy
25
star
13

groovylint

A CodeNarc wrapper for linting Groovy files
Python
19
star
14

windows-openssh

Ansible role to install Openssh on a Windows host
10
star
15

ansible-role-nix

Ansible role to install Nix
Jinja
10
star
16

ansible-role-jenkins-jcasc

Ansible role for installing Jenkins with JCasC
Jinja
4
star
17

ansible-role-prometheus-node-exporter

Ansible role to install Prometheus' node_exporter application
Jinja
4
star
18

postgres-pipeline-utils

Jenkins shared pipeline library to run Postgres in a Docker container
Groovy
2
star
19

ansible-role-sccache

Ansible role to install sccache
Jinja
1
star
20

ansible-role-jenkins-swarm-client

Ansible role to install Jenkins Swarm Client
Jinja
1
star
21

ansible-role-rustup-init

Ansible role to install rustup-init
Jinja
1
star
22

ansible-role-clang

Ansible role to install clang
Jinja
1
star