Vous êtes ici : FIL > Portail > Licence Info > L3S6 Info > OpenDevs

Meta (anciennement OpenDevs)

Attention: évolution du contenu ! Malgré cela l’option Communauté de développeurs / OpenDevs conserve son nom cette année.

Objectifs

Ce module a pour but de vous donner des clés pour comprendre le fonctionnement des langages orientés objets, et plus particulièrement des langages orientés objets dynamiques.

C’est une exploration par la pratique des interprètes de programmes et des noyaux de langages de programmation, de la méta-programmation, en utilisant Pharo comme langage d’illustration.

Contenu

On met de côté les techniques d’analyse syntaxique et de compilation, pour s’intéresser à l’implémentation de fonctionnalités centrales : modèle objet (instanciation, héritage, classes et métaclasses), liaison tardive, fermetures lexicales, programmation réflexive (introspection et intercession).

  • Découverte de l’environnement Pharo (compilateur, métaclasses, arbre de syntaxe abstraite…)
  • Fonctionnement d’un interprète de programmes par l’implémentation d’un mini-Scheme
  • ObjVlisp: construction du noyau d’un langage à objets
  • Fonctionnement des fermetures lexicales
  • Construction d’un interprète abstrait

Équipe pédagogique

  • Damien Pollet
  • Guillermo Polito
  • Stéphane Ducasse
  • Vincent Aranega (ponctuellement)

Volume horaire

Chaque semaine, 4h de TP

Crédits

5 ECTS

Séance Date TP
1 11/01 Découverte de Pharo, constitution des groupes
2 18/01 Exploration de Pharo
3 25/01 Présentations sur Pharo
401/02 ObjVlisp: noyau d'un langage objet réflexif
508/02 ObjVlisp
615/02 ObjVlisp + interro surprise
du 18 au 22/02 Interruption pédagogique
7 01/03 mini Scheme: interprète avec les fermetures lexicales
8 08/03 mini Scheme
9 15/03 mini Scheme
10 22/03 interprète abstrait
11 29/03 interprète abstrait

Évaluation

L’évaluation s’effectue suivant une procédure de contrôle continu.

  • Présentation en groupe découverte : sur un aspect de l’environnement Pharo, en conclusion de la période initiale de prise en main,
  • Présentation en groupe projet : sur l’implémentation, en fin de semestre,
  • Évaluation individuelle pratique, par les encadrants, tout au long du semestre.

Documents

Supports sur l’environnement de développement Pharo

Supports liés au contenus de l’option

Ressources annexes