Automata (Algorithms) Library Toolkit
What is it?
The automata (algorithm) library toolkit (ALT) is a mathematical implementation of various types of automata, grammars, and other common structires along with mathematical implementation of algorithms over these structures. Originaly developed at Faculty of Information Technology of Czech Technical University in Prague. It supposed to be a reference implementation of formal algorithms as-are in papers, hence allowing practical reuse of existing algorithms in form of by pipe comunicating tools.
The Latest Version
Details of the latest version can be found visitng our gitlab project page.
Requirements
Project is pure C++ builded by makefile. Some tests are handled by shell scripts.
make >= 3.9
-
g++ >= 4.8
orclang++ >= 3.5
binutils-dev
libiberty-dev
libcppunit-dev
libtclap-dev
-
doxygen
(optional for documentation generation) -
graphviz
(optional for documentation generation and automata visualizations)
Installation
- Clone the repo:
git clone
or download sources of stable release and extract it. - Change directory and compile:
cd automata-library
andmake
. - Run :)
-
Optional step: Generate documentation by executing
make doc
.
Documentation
Developer documentation is available for generation using makefile (requires
doxygen
) and will be attached in release packages.
Contributing
Feel free to fork this project and send your merge requests there.
Developers
The formatting of the code in ALT is defined by uncrustify configuration file and clang-format configuration file in cooperation (both had some side-effects). Every developer contributing to the project shall format the code before making the commit. Pre-commit hook and both configuration files are present in the repository.
Please install uncrustify
and clang-format
. Then move/copy .pre-commit
file to .git/hooks/pre-commit
.
Vim configuration for this project is available in .lvimrc
file and
localvimrc Vim extension is used to load this file.
Licensing
Please see LICENSE file.
Contacts
- If you want to be informed about new code releases, bug fixes, security fixes, general news and information about the ALT subscribe to the ?? mailing list as described under ??
- If you want freely available support for running ALT please see the resources at ??
- If you have a concrete bug report for ALT please see the instructions for bug reporting at ??
- If you want to participate in actively developing ALT please subscribe to the ?? mailing list as described at ??
Authors
- Author 1
- Author 2