LRDE Projects
Olena is a software platform dedicated to image processing. At the moment it is mainly composed of a C++ library:
Milena. This library features many tools to easily perform image processing tasks. Its main characteristic is its genericity: it allows to write an algorithm once and run it over many kinds of images (grey scale, color, 1D, 2D, 3D…).
Vaucanson is a finite state machine
manipulation platform, consisting of a library and tools implemented
on top of it. It benefits from the expertise we gained from
our intensive work on high performance generic programming for
Olena. On the other hand, its theoretical
well-foundedness in the area of automata is ensured thanks to a
collaboration with Jacques Sakarovitch, at the Ecole Nationale
Supérieure des Télécommunications (ENST).
Thanks to the keyword
template, and almost by accident, C++ is a very special language where one can not only specify what a program will do once compiled, but in addition one can specify how
the compiler will compile a program. This feature gave birth to powerful programming techniques, commonly referred to as ``metaprogramming''. Because of its committment in the
Olena and
Vaucanson projects, the LRDE has developped expertize in metaprogramming. Unfortunately the implementation is tricky and very error-prone.
Starting from the simple idea that ``we want metaprogramming efficiency, but we don't want to write it'', the
Transformers project was initiated. It aims at converting naive (but decent) C++ programming into high-speed (but indecent) C++ source code. To this end, several tasks must be addressed: basically the
Transformers project aims at designing a set of tools to manipulate C++ programs.
The
TigerCompiler project is a C++ implementation of a Tiger compiler.
The Tiger language is described by Andrew Appel in his "Modern Compiler Implementation" books, and constitutes an important project in the EPITA curriculum. The needed material is referenced in the
TigerLinks,
in particular
http://www.lrde.epita.fr/~akim/compil/assignments.html.
Spot is an object-oriented model checking library written in C++. It offers a set of bricks to experiment with and develop your own model checker
based on transition-based generalized Büchi automata.
Spot was born in the
MoVe team at
LIP6 and is now co-maintained by the LRDE.
Development Projects
- Ad Hoc: an automatic cancer detection project.
- MetaGene: generating static C++ from pseudo Caml code.
- Miscellaneous Projects: various tools developed to fit specific needs.
- PrcsWrapper: paperware improving the interface of prcs.
- Vampire: running a test suite on a batch of machines.
- Tiger.Havm: An interpreter for Andrew Appel's Tiger Intermediate Language.
- Funny: a functional flavor code platform for C++.
- Mical: a regular grammar inference library.
- Evidenz: a Dempster-Shafer engine.
- Vcs: A wrapper over Version Control Systems.
Old Projects
Urbi et Orbi: a distributed environment framework.
The Urbi et Orbi project aims to build a distributed environment framework
whose first applications are virtual worlds. Virtual worlds are virtual 3D
scenes personneld with common objects (houses, trees, etc.),avatars (i.e. the
virtual image of the users) in which one may walk around and interact. In
addition, this virtual world is distributed,in the sense that its full description is spread over several computers, connected via a network. There is no needfor a single host to have a full knowledge of the world. We focus on virtual worlds for a large audience, therefore there are no other material
requirements than a standard personal machine, with a connection to a local
network or the Internet. Windows and unix or linux platforms are supported.
Scalability is required.
Student Projects
to top