La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Programmation non procédurale Le projet ECOLE 2000 ECOLE 2000, un Environnement de COnstruction, et dévaluation daLgorithmEs logiques, fonctionnels et.

Présentations similaires


Présentation au sujet: "Programmation non procédurale Le projet ECOLE 2000 ECOLE 2000, un Environnement de COnstruction, et dévaluation daLgorithmEs logiques, fonctionnels et."— Transcription de la présentation:

1 Programmation non procédurale Le projet ECOLE 2000 ECOLE 2000, un Environnement de COnstruction, et dévaluation daLgorithmEs logiques, fonctionnels et orientés objet. Proposé par D.E ZEGOUR. Le projet ECOLE Introduction Phase de construction Phase d évaluation Les travaux réalisés

2 Programmation non procédurale Le projet ECOLE 2000 INTRODUCTION Le projet "Concorde", prédécesseur du projet ECOLE 2000 ne s'intéressait qu'aux langages procéduraux. ECOLE 2000 permet de faire une synthèse sur les langages non procéduraux tels que les langages fonctionnels, logiques et orientés objets.

3 Programmation non procédurale Le projet ECOLE 2000 Génie logiciel Il s'agit de concevoir un ensemble d'outils ( génie logiciel) pour pouvoir : écrire et construire des algorithmes de différents types les évaluer et les prouver les transformer

4 Programmation non procédurale Le projet ECOLE 2000 Phase de construction : Nous désignons par s-algorithme une solution d'un problème donné exprimé dans un s-langage. Dans notre projet, nous considérons les types d'algorithmes suivants : F-algorithmes, L-algorithmes, OO-algorithmes correspondant aux langages F, L, OO

5 Programmation non procédurale Le projet ECOLE 2000 Phase de construction : F-langage : L'algorithme est exprimé à travers une composition de fonctions. Deux approches seront traitées : avec variables et sans variables ( combinateurs ). L-langage : L'algorithme est exprimé sous forme d'un ensemble d'assertions et de règles. OO- langage : L'algorithme est un ensemble d'objets. On distinguera les approches par classes, par frames et par acteurs.

6 Programmation non procédurale Le projet ECOLE 2000 Phase d'évaluation : L'évaluation se fait à travers - un démonstrateur automatique pour les langages logiques - un réducteur d'expressions sur un langage pivot ( le lambda-calcul) pour les langages fonctionnels. L'aspect preuve est aussi développé dans cette partie utilisant la théorie du point fixe et des systèmes formels.

7 Programmation non procédurale Le projet ECOLE 2000 Fenêtre sur Concorde : Il s'agit ici d'étudier les passages entre les langages non procéduraux et procéduraux.

8 Programmation non procédurale Le projet ECOLE Environnement de construction dalgorithmes fonctionnels et de transformation vers des lambda expressions (?_ calcul). Réalisation dun environnement de construction et de transformation dalgorithmes fonctionnels avec variables. Il sagit de définir un langage fonctionnel en déterminant sa syntaxe et sa sémantique puis développer les outils suivants : - Des outils syntaxiques d aide à la construction des programmes. - Un traducteur vers un langage pivot (?_ calcul). - un traducteur vers un langage procédural.

9 Programmation non procédurale Le projet ECOLE Environnement de construction dalgorithmes logiques et de transformation vers des formes clausales Il sagit de concevoir et de réaliser un environnement de construction, correction et transformation de programmes logiques appartenant au langage LOGFC quon a conçu au préalable. Le code généré est la forme clausale, qui constitue le code pivot pour le mécanisme de résolution appliqué lors de linterprétation des programmes logiques. Lédition dun programme LOGFC peut seffectuer en deux modes : assisté ou non assisté, tous deux accompagnés dun système daide.

10 Programmation non procédurale Le projet ECOLE Réalisation dun moteur dinférence pour un prototype de langage logique (LOGFC) Ce travail consiste à développer un démonstrateur de théorèmes pour lexécution de programmes logiques (sous forme clausale) en adoptant différentes stratégies de la résolution de Robinson et lintégrer dans lapplication déjà réalisée. Lapplication est doté dun outil qui permet de transformer toute formule de la logique des prédicats du premier ordre vers une forme clausale équivalente.

11 Programmation non procédurale Le projet ECOLE Machine à réduction pour un langage de programmation fonctionnelle (avec variable). Il sagit de développer une machine pour lévaluation de programmes fonctionnels ( sous forme de ?-expressions) en adoptant différentes stratégies de la ?-conversion ( évaluation par valeur, par nécessité, paresseuse,... ) et lintégrer dans lapplication déjà réalisée. Lapplication est doté dun outil qui permet de vérifier léquivalence de fonctions mathématiques écrites sous forme usuelle ( Interconvertibilité de ?- expressions)

12 Programmation non procédurale Le projet ECOLE Environnement de programmation objet par classe Il sagit de concevoir un langage purement objet en sinspirant de langages existants, pourvu au moins des caractéristiques suivantes : Encapsulation, Héritage, Polymorphisme, Classes génériques, Typage dynamique Le travail consiste à développer un environnement de construction de programmes objet ainsi quun interpréteur capable de résoudre les techniques de la programmation objet pure ( caractéristiques citées)

13 Programmation non procédurale Le projet ECOLE Environnement de construction et dinterprétation pour un prototype de langage Objet par Frame. Dans la programmation par frame, le graphe dhéritage est typiquement dynamique. Aussi, contrairement à la programmation par classe, chaque objet ( frame ) est en même temps considéré comme instance et générateur dautres objets.

14 Programmation non procédurale Le projet ECOLE Environnement de construction et dinterprétation pour un prototype de langage Objet par Frame. Conception d un langage objet typiquement par Frame en faisant ressortir les différents concepts de ce mode de programmation. - limplémentation de ces concepts dans le but de lélaboration dun interpréteur. - au développement d un environnement pédagogique de programmation facilitant la construction des programmes par frames du langage proposé et montrant les différents aspects liés à ce type de programmation.

15 Programmation non procédurale Le projet ECOLE Environnement de construction et dinterprétation pour un prototype de langage Objet par Acteur. Dans la programmation par acteur, les objets (acteurs) accomplissent des taches indépendantes (scripts )et se communiquent par envois de messages. Ce qui implique un parallélisme au niveau des traitements.

16 Programmation non procédurale Le projet ECOLE Environnement de construction et dinterprétation pour un prototype de langage Objet par Acteur. Ceci revient à - concevoir un langage objet typiquement par Acteur en faisant ressortir les différents concepts de ce mode de programmation. - implémenter ces concepts dans le but délaborer un interpréteur simulant le parallélisme. - développer un environnement pédagogique de programmation facilitant la construction des programmes par Acteurs du langage proposé et montrant les différents aspects liés à ce type de programmation.

17 Programmation non procédurale Le projet ECOLE Environnement de programmation fonctionnelle sans variable. Il sagit de concevoir un langage typiquement fonctionnel, inspiré du langage Fp, dans lequel la programmation se fait sans lutilisation de variables. Deux aspects sont développés : - passage vers un langage pivot : logique combinatoire - écriture dune machine à réduction pour évaluer les formes combinatoires. Le produit est conçu de telle sorte pour quil soit utilisé à des fins pédagogiques.


Télécharger ppt "Programmation non procédurale Le projet ECOLE 2000 ECOLE 2000, un Environnement de COnstruction, et dévaluation daLgorithmEs logiques, fonctionnels et."

Présentations similaires


Annonces Google