1. `
Le projet Tiger a l’EPITA
Roland Levillain, Akim Demaille, Olivier Ricou
´
Laboratoire de Recherche et Developpement de l’EPITA (LRDE)
´
2 fevrier 2012
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 1/8
2. Contexte et motivations
´
L’ecole
´ ´ ´ ´
EPITA : ecole d’ingenieurs specialisee en informatique
Ing1 : enseignements d’informatique fondamentale
`
Importance de la pratique, a travers de nombreux projets
´
Besoins pedagogiques
´ ´
Ca. 2000 : necessite d’un projet long et ambitieux
Pot-pourri des enseignements d’Ing1
´
Solution adoptee
Un projet de construction de compilateur
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 2/8
3. Le langage et le projet Tiger
Concu par Andrew Appel pour ses livres.
¸
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 3/8
4. Objectifs du projet
But
Construire un compilateur
Projet complet Utilisation d’outils de
´
Plusieurs iterations (4–10) ´
developpement
´
Gestion d’equipe (4) ´
Algorithmique appliquee
C++ ´
Comprehension des
´
Methodes objet ordinateurs
Design patterns En anglais
´ `
Public 250+ eleves
Encadrement 2 enseignants + 30 assistants
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 4/8
5. Objectifs du projet
But
´ ´
Construire un compilateur (comme produit derive)
Projet complet Utilisation d’outils de
´
Plusieurs iterations (4–10) ´
developpement
´
Gestion d’equipe (4) ´
Algorithmique appliquee
C++ ´
Comprehension des
´
Methodes objet ordinateurs
Design patterns En anglais
´ `
Public 250+ eleves
Encadrement 2 enseignants + 30 assistants
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 4/8
6. Tiger et le logiciel libre
´ ´
Nombreux outils libres utilises par les etudiants
Outils Description Notes
Flex, Bison Analyseurs lex./synt. ´
Etendus
MonoBURG ´ ´
Gen. de gen. de code ´
Etendu
Argp Gest. ligne commande ´ ´
Integre
HAVM, Nolimips, `
Interpretes ´
Creations LRDE
Autotools, Make Construction, maint. Ex-maint. LRDE
GCC, Clang Compilateurs C++11
Boost Bibliotheques C++
`
GDB, Valgrind Debuggers
Git Gestion du code
SWIG ´
Gen. d’interfaces (Optionnel)
Python, Ruby Langages de script (Optionnel)
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 5/8
7. Tiger et le logiciel libre
´ ´
Utilisation des methodes employees dans le logiciel libre
ˆ
Controle de version (Git) : gestion, rendu et suivi
`
Diffusion de code : a l’aide de patches
Communication : newsgroups et listes de diffusion
`
Gestion des problemes & suivi : tickets
Cependant : le code du compilateur Tiger n’est pas
ˆ
lui-meme libre
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 6/8
8. ´ ´
Benefices de l’approche libre
´ ´
Evolution du projet au fil des ans facilitee
´ `
Rapidite de la mise a jour des enseignements
´ ´ ´
Facilite de test, d’integration et de deploiement de
nouveaux outils
Idem pour les rapports de bugs et l’extension des outils
´
Beaucoup de nouveautes sont de plus en plus disponibles
via le logiciel libre.
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 7/8
9. ´
Epilogue
` ´
Projet toujours actif 13 ans apres sa creation
´ ´ ´
Faire beneficier d’autres formations de notre experience ?
´
Possibilite de partager savoir-faire, documents & outils
Informations et contacts :
http://tiger.lrde.epita.fr
tiger@lrde.epita.fr
R. Levillain, A. Demaille, O. Ricou (LRDE) `
Le projet Tiger a l’EPITA 02/02/2012 8/8