Yet another abstraction layer - a general purpose C++ library.
Permalink
Failed to load latest commit information.
_aux help-to-asciidoc, make, deploy: Improve manpage generation. Nov 1, 2018
_deploy help-to-asciidoc, make, deploy: Improve manpage generation. Nov 1, 2018
dbwrapper HHuginn: `boolean` values are singletons now. Nov 5, 2018
doc Formatting cleanup. Sep 13, 2018
hconsole HIODispatcher: Reimplement file descriptor sets reconstruction. Oct 25, 2018
hcore Disable spurious GCC (7.2.1 - 7.3.1) warning about maybe-uninitialize… Nov 13, 2018
hdata KEY_CODE: Refactor `KEY_CODE` from 'hconsole' lib into 'tools' lib. Oct 25, 2018
tools HHuginn.OperatingSystem: Add `memory_size()` and `core_count()` funct… Nov 8, 2018
.appveyor.yml appveyor: Add support for appveyor. Sep 22, 2018
.editorconfig Add EditorConfig. Feb 27, 2018
.gitignore msvcxx: Fix install target and package deployment. Jan 13, 2017
.travis.yml help-to-asciidoc, make, deploy: Improve manpage generation. Nov 1, 2018
BSDmakefile Prepare for trully autonomous yaal-devel. Jan 14, 2014
CMakeLists.txt Work on msvcxx port (14). Jul 14, 2016
GNUmakefile Prepare for trully autonomous yaal-devel. Jan 14, 2014
LICENSE.md Replace literal license and copyright information in source files wit… Jan 14, 2018
Makefile.mk.in Version number bump (0.0.42). Sep 23, 2018
README.md README.md: Add link to Huginn website. Nov 4, 2017
configure.ac configure.ac, cmake: Support coverage build with clang. Sep 19, 2018
configure.js HHuginn: Add ${libdir} to module paths. May 18, 2018
makefile Prepare for trully autonomous yaal-devel. Jan 14, 2014
msvcxx.mk Add missing file from previous commit. Aug 23, 2016
yaal.pc.in deploy: Put "yaal_" into each library name e.g.: libhcore-d.so -> lib… Feb 7, 2015
yaalrc.in Latin2 is dead, long live UTF-8. May 31, 2017

README.md

Yet Another Abstraction Layer

What

yaal is a cross platform, general purpose C++ library.

This library provides unified, high level, C++ interfaces and implementations for handling problems and providing solutions in multiple domains:

  • algorithms
  • collections (containers)
  • arbitrary precision numeric types and operations
  • threading
  • networking
  • generic, DSL grammar driven parsers
  • operating system infrastructure interfaces
  • xml serialization/deserialization and DOM operations
  • database access

yaal also contains a fully fledged programming language named Huginn.

Where

yaal supports a wide range of operating systems/platforms, including but not limited to:

  • GNU/Linux
    • Debian
    • Ubuntu
    • CentOS
    • Fedora
    • Raspbian
  • FreeBSD
  • Oracle Solaris
  • Microsoft Windows
  • Cygwin

How

yaal can be installed from binary packages or build from sources.