Fiche: Difference between revisions

From air
Jump to navigation Jump to search
No edit summary
No edit summary
Line 8: Line 8:
* GUILLAUME Hammouti (RICM4)
* GUILLAUME Hammouti (RICM4)


=Objectif=
Le but à long terme de ce projet est de pouvoir partager des codes sources simples de différent langage de scripts, de permettre une execution efficace de ces codes par traduction en langage compilable et permettre l'interaction avec ce code compilé depuis les différents langages de script.


Dans un premier temps on se propose d'identifier un langage de script minimal proche de Python et Ruby. De traduire ce language dans un langage compilable (C++ ou le langage Go) et de permettre l'interaction entre les langages de script et le version compilée.
== Subject summary ==


=Les contraintes technologigues =
* Python vers 3.5
* Python Abstract Syntax Trees https://docs.python.org/3/library/ast.html
* [http://msgpack.org/index.html MessagePack]


=Plan de travail=
* Découverte du sujet et des technologies
* Analyse du projet [http://air.imag.fr/index.php/Project-2014-2015-ESP8266 Project-2014-2015-ESP8266]
** et notamment le contenu du répertoire '''parser''' du projet https://github.com/librallu/RICM4Projet
* Définir langage de script minimal à partir Python
** orienté objet
** type de variable simple


= Piste de développement =
== Week 1 (January 18th - January 22th) ==


* Apprendre Python
=== Objectives ===
* Apprendre Go
* Créer un code Python extrémement simple
** obtenir l'AST associé
** comprendre cet AST
* Définir le langage SSSL
* Traducteur AST -> SSSL
* Traducteur SSSL -> Go
* ?
* Profit


= Divers =
== Liens utiles ==
* GitHub: https://github.com/FlorianPO/Speeding-Simplified-Script-Language
* AST: https://docs.python.org/3.4/library/ast.html


* Liste de parser en python: https://wiki.python.org/moin/LanguageParsing
=== Work done ===


* '''A Lire''' Parsing expression grammar ('''PEG''''): https://en.wikipedia.org/wiki/Parsing_expression_grammar


* '''Grako''' (A generator of PEG/Packrat parsers from EBNF grammars): https://pypi.python.org/pypi/grako/3.6.6
=== Problems faced ===
** DOC: https://bitbucket.org/apalala/grako
** http://stackoverflow.com/questions/tagged/grako
** http://stackoverflow.com/tags/grako/info

* '''Arpeggio''' http://igordejanovic.net/Arpeggio/

== Installation d'Astmonkey ==
* Python 3.4
* Installation de pydot
* Récupérer une archive de https://github.com/nlhepler/pydot
* Décompresser (unzip) et installer par '''python setup.py install'''
* Installer Astmonkey par '''pip install astmonkey'''

== Journal de Bord ==
=== Semaine 1 ===
Prise de connaissance du sujet et des technologies mises en jeu (beaucoup de doc à lire).
* Mise en place de l'environnement de développement Python (IDE + dépendances / pré-requis)
* Création du Git https://github.com/FlorianPO/Speeding-Simplified-Script-Language
* Axes de recherche établis, plan de travail débroussaillé

Revision as of 15:15, 25 January 2016

Subject: Streaming en stéréoscopie

Supervisors:

  • Jérôme Maisonasse

Students:

  • ZHAO Zilong (RICM4)
  • GUILLAUME Hammouti (RICM4)

Objectif

Le but à long terme de ce projet est de pouvoir partager des codes sources simples de différent langage de scripts, de permettre une execution efficace de ces codes par traduction en langage compilable et permettre l'interaction avec ce code compilé depuis les différents langages de script.

Dans un premier temps on se propose d'identifier un langage de script minimal proche de Python et Ruby. De traduire ce language dans un langage compilable (C++ ou le langage Go) et de permettre l'interaction entre les langages de script et le version compilée.

Les contraintes technologigues

Plan de travail

Piste de développement

  • Apprendre Python
  • Apprendre Go
  • Créer un code Python extrémement simple
    • obtenir l'AST associé
    • comprendre cet AST
  • Définir le langage SSSL
  • Traducteur AST -> SSSL
  • Traducteur SSSL -> Go
  • ?
  • Profit

Divers

Liens utiles

Installation d'Astmonkey

  • Python 3.4
  • Installation de pydot
  • Récupérer une archive de https://github.com/nlhepler/pydot
  • Décompresser (unzip) et installer par python setup.py install
  • Installer Astmonkey par pip install astmonkey

Journal de Bord

Semaine 1

Prise de connaissance du sujet et des technologies mises en jeu (beaucoup de doc à lire).