Awali

Awali est la dernière génération d'une suite de plateformes logicielles: Vaucanson (2003--2012) and Vaucanson2 (2012--2014); elle est développée en parallèle avec VCSN qui est issue d'un fork à partir du même Vaucanson2.
Nous avons utilisé cette longue expérience pour mettre en place les méthodes et les concepts qui permettent d'atteindre les objectifs d'efficacité, de généricité et d'accessibilité que nous nous sommes fixés.
Awali is the last generation of a series of platforms: Vaucanson (2003--2012) and Vaucanson2 (2012--2014); it is written in parallel with VCSN which results from a fork from the same Vaucanson2.
We have used this long experience to set up the methods and concepts necessary to achieve our main goals: efficiency, genericity, and accessibility.

Introduction

Awali is written in C++ and is organised into three layers: the `static', the `dynamic', and the `interface' layers. The core of the platform is the static level, which provides the data structures and a library of algorithms. The type of a weighted automaton is determined by the type of weights and the type of labels. Every algorithm is implemented via template functions working on template classes, and is compiled for the type of automata that are used. Efficiency is partly based upon this generic programming which is anyway essential when dealing with weighted automata.

The dynamic level allows both the call of functions of the static level and genuine C++ programming with the use of a kind of `universal' type of automata. This type is an abstraction of template (static) types of automata; it gives access to a complete template-free API for weighted automata. A remarkable feature of the dynamic level is the `on request' compilation of modules (data structures and algorithms) from the static level. Even written at the dynamic level, programs are compiled and not interpreted at execution time.

The interface level offers for the time being two kinds of access to the lower layers: a command-line interface which allows the call to most of the algorithms of the static level, and a Python interface to both the dynamic and the static levels. A graphic user interface is under development.

Soutiens financiers Support

D'avril 2011 à septembre 2014, le projet Vaucanson2 a été financé par la convention ANR 2010 INTB 0203.

D'octobre 2016 à septembre 2017, Victor Marsault a été financé par une bourse Marie Skłodowska-Curie,

Le projet Awali est financé par le Département Informatique et Réseaux de Télécom ParisTech.
From April 2011 to September 2014, Vaucanson2 project has been supported by contract ANR 2010 INTB 0203.

From October 2016 to September 2017, Victor Marsault has been supported by a Marie Skłodowska-Curie fellowship, co-funded by the European Union and the University of Liège, Belgium.

Awali project is supported by the Department Computer Science and Networking of Telecom ParisTech.


Dernière Last modification: 14 Décembre December 2017