Difference between revisions of "Jobs/M2 DV 2014 conception-dsl"

From LRDE

Line 3: Line 3:
 
|-
 
|-
 
| Dates || stage de 5-6 mois en 2014
 
| Dates || stage de 5-6 mois en 2014
|-
 
| Lieu ||
 
 
|-
 
|-
 
| Thématique ||
 
| Thématique ||
 
|-
  +
| Équipe ||
  +
|-
  +
| Directeur de stage ||
 
|-
 
|-
 
| Contexte || Stage plutôt orienté développement/recherche.
 
| Contexte || Stage plutôt orienté développement/recherche.
 
|-
 
|-
  +
| Présentation générale du domaine ||
| Prérequis || Avoir des restes du cours de programmation fonctionnelle. Une connaissance préalable de Lisp, Haskell et/ou Scala serait un plus.
 
  +
|-
 
| Prérequis || Avoir des connaissances en programmation fonctionnelle. Une connaissance préalable de Lisp, Haskell et/ou Scala serait un plus.
 
|-
 
|-
 
|Descriptif || La conception et l'implémentation des DSLs est un domaine en plein essor. Il existe de nombreuses approches à ce problème, dont l'une consiste à utiliser les capacités d'extensibilité d'un langage de programmation généraliste, pour l'adapter à des besoins spécifiques. De nombreuses approches multi-paradigmes (par ex. langages fonctionnels / méta-programmation à la compilation) offrent également des avantages. Lisp est un langage particulièrement bien adapté à ce type de problématique, mais il est presque totalement absent de la littérature sur les DSLs. En effet, la plupart des chercheurs du domaine ne sont pas (ou plus) familiers avec ce langage, préfèrent une approche basée sur un langage statique, ou encore ont simplement oublié tout ce dont Lisp est capable. Le but de ce stage est de (commencer à) restaurer l'équilibre, en rajoutant Lisp à la littérature comparative. Le travail consistera en l'étude de la bibliographie démontrant certaines approches utiles à la conception de DSLs, de proposer une approche alternative avec Lisp, puis de comparer les résultats obtenus. Les étapes de ce stages seront les suivantes: (i) Familiarisation avec le langage Common Lisp et en particulier avec ses capacités d'extensibilité ; (ii) Prise de contact avec la littérature sur la conception et l'implémentation de DSLs dans d'autres langages ; (iii) Choix d'une approche applicative ou d'un comparatif basé sur cette bibliographie et implémentation d'un équivalent Lispien ; (iv) Finalement, analyse des résultats selon des axes tels que: facilité d'implémentation, expressivité, performances etc.
 
|Descriptif || La conception et l'implémentation des DSLs est un domaine en plein essor. Il existe de nombreuses approches à ce problème, dont l'une consiste à utiliser les capacités d'extensibilité d'un langage de programmation généraliste, pour l'adapter à des besoins spécifiques. De nombreuses approches multi-paradigmes (par ex. langages fonctionnels / méta-programmation à la compilation) offrent également des avantages. Lisp est un langage particulièrement bien adapté à ce type de problématique, mais il est presque totalement absent de la littérature sur les DSLs. En effet, la plupart des chercheurs du domaine ne sont pas (ou plus) familiers avec ce langage, préfèrent une approche basée sur un langage statique, ou encore ont simplement oublié tout ce dont Lisp est capable. Le but de ce stage est de (commencer à) restaurer l'équilibre, en rajoutant Lisp à la littérature comparative. Le travail consistera en l'étude de la bibliographie démontrant certaines approches utiles à la conception de DSLs, de proposer une approche alternative avec Lisp, puis de comparer les résultats obtenus. Les étapes de ce stages seront les suivantes: (i) Familiarisation avec le langage Common Lisp et en particulier avec ses capacités d'extensibilité ; (ii) Prise de contact avec la littérature sur la conception et l'implémentation de DSLs dans d'autres langages ; (iii) Choix d'une approche applicative ou d'un comparatif basé sur cette bibliographie et implémentation d'un équivalent Lispien ; (iv) Finalement, analyse des résultats selon des axes tels que: facilité d'implémentation, expressivité, performances etc.
  +
|-
  +
| Objectifs du stage ||
 
|-
 
|-
 
|Intérêt pour le candidat || Familiarisation avec plusieurs langages de programmation, dont Lisp, Haskell et Scala. Expérience dans le domaine des DSLs (Domain Specific Languages).
 
|Intérêt pour le candidat || Familiarisation avec plusieurs langages de programmation, dont Lisp, Haskell et Scala. Expérience dans le domaine des DSLs (Domain Specific Languages).
 
|-
 
|-
 
| Références bibliographiques ||
 
| Références bibliographiques ||
  +
|-
 
| Lieu ||
 
|-
 
|-
 
|Rémunération || 800€ brut/mois
 
|Rémunération || 800€ brut/mois
  +
|-
  +
|Débouchés ||
 
|-
 
|-
 
|Contact || didier@lrde.epita.fr
 
|Contact || didier@lrde.epita.fr

Revision as of 19:16, 13 November 2013

Lisp pour la conception et le développement de DSLs.
Dates stage de 5-6 mois en 2014
Thématique
Équipe
Directeur de stage
Contexte Stage plutôt orienté développement/recherche.
Présentation générale du domaine 
Prérequis Avoir des connaissances en programmation fonctionnelle. Une connaissance préalable de Lisp, Haskell et/ou Scala serait un plus.
Descriptif La conception et l'implémentation des DSLs est un domaine en plein essor. Il existe de nombreuses approches à ce problème, dont l'une consiste à utiliser les capacités d'extensibilité d'un langage de programmation généraliste, pour l'adapter à des besoins spécifiques. De nombreuses approches multi-paradigmes (par ex. langages fonctionnels / méta-programmation à la compilation) offrent également des avantages. Lisp est un langage particulièrement bien adapté à ce type de problématique, mais il est presque totalement absent de la littérature sur les DSLs. En effet, la plupart des chercheurs du domaine ne sont pas (ou plus) familiers avec ce langage, préfèrent une approche basée sur un langage statique, ou encore ont simplement oublié tout ce dont Lisp est capable. Le but de ce stage est de (commencer à) restaurer l'équilibre, en rajoutant Lisp à la littérature comparative. Le travail consistera en l'étude de la bibliographie démontrant certaines approches utiles à la conception de DSLs, de proposer une approche alternative avec Lisp, puis de comparer les résultats obtenus. Les étapes de ce stages seront les suivantes: (i) Familiarisation avec le langage Common Lisp et en particulier avec ses capacités d'extensibilité ; (ii) Prise de contact avec la littérature sur la conception et l'implémentation de DSLs dans d'autres langages ; (iii) Choix d'une approche applicative ou d'un comparatif basé sur cette bibliographie et implémentation d'un équivalent Lispien ; (iv) Finalement, analyse des résultats selon des axes tels que: facilité d'implémentation, expressivité, performances etc.
Objectifs du stage
Intérêt pour le candidat Familiarisation avec plusieurs langages de programmation, dont Lisp, Haskell et Scala. Expérience dans le domaine des DSLs (Domain Specific Languages).
Références bibliographiques
Lieu
Rémunération 800€ brut/mois
Débouchés
Contact didier@lrde.epita.fr