Discussion:Langage dédié

message: Nous nous proposons d'enrichir cet article, et pour cela nous commençons par lister ici les références bibliographiques que nous avons l'intention d'utiliser.
Toutes aides ou critiques constructives sont évidemment les bienvenues.
Aminetiir Clement Mondon (d) 11 octobre 2011 à 09:37 (CEST)
thread_title:  Recherche bibliographique 

message: Un langage dédié est un langage de programmation ou un langage de spécification exécutable qui offre, grâce a des notations et abstractions appropriées, un pouvoir d’expression concentré sur, et généralement limité à, un domaine d’applications particulier.
Sarah.tiir (d) 27 octobre 2011 à 22:02 (CEST)
thread_title:  Définitions 

message: === Historique===
L'idée de langages spécifiques au domaine n'est pas récente, celle­ ci serait presque aussi ancienne que les langages
de programmation eux-mêmes.
Le concept serait en effet apparu dans la seconde moitié des années 1950 avec APT, un langage visant la programmation de   
machines-outils.
Une difficulté de décrire l'histoire des DSL est qu'il n'y aurait pas unanimité quant à savoir ce qui fait d'un langage un DSL.
la situation ne serait pas noire ou blanche...
Les langages pourraient plutôt être classés sur une échelle allant de « très spécifique au domaine» ( la forme de Backus-Naur 2   http://fr.wikipedia.org/wiki/Forme_de_Backus-Naur) à « très généraliste» (par exemple, C++)
Exemples de langages spécifiques au domaine:
Exel: tableur, html: page web ; sql: requete de base de données
Sarah.tiir (d) 26 octobre 2011 à 08:37 (CEST)
thread_title:  Historique / Évolution 

message: L'idée de langages spécifiques au domaine n'est pas récente, celle­ ci serait presque aussi ancienne que les langages
de programmation eux-mêmes.
Le concept serait en effet apparu dans la seconde moitié des années 1950 avec APT, un langage visant la programmation de   
machines-outils.
Une difficulté de décrire l'histoire des DSL est qu'il n'y aurait pas unanimité quant à savoir ce qui fait d'un langage un DSL.
la situation ne serait pas noire ou blanche...
Les langages pourraient plutôt être classés sur une échelle allant de « très spécifique au domaine» ( la forme de Backus-Naur 2   http://fr.wikipedia.org/wiki/Forme_de_Backus-Naur) à « très généraliste» (par exemple, C++)
Exemples de langages spécifiques au domaine:
Exel: tableur, html: page web ; sql: requete de base de données
Sarah.tiir (d) 26 octobre 2011 à 08:37 (CEST)
thread_title:  Historique

message: Le cout d'entretien des DSL est moindre que celui des langages généralistes .
Aminetiir (d) 8 novembre 2011 à 09:42 (CET)
thread_title:  Cout des DSL 

message: Le processus de développement d’un DSL peut s’avérer très complexe. Il requiert une expertise du domaine concerné, mais aussi une connaissance dans le domaine de la conception des langages de programmation. Pour aider les concepteurs/développeurs, identifie les différentes phases de
développement : décision, analyse, conception, implantation et déploiement. La décision répond à la question « pourquoi et quand » développer et les autres phases correspondent au « comment développer ». En pratique, le développement d’un DSL n’est un pas un simple processus séquentiel
mais un processus itératif.
Sarah.tiir (d) 27 octobre 2011 à 21:35 (CEST)
thread_title:  Processus de développement d’un langage dédié 

message: Martin Fowler classe les DSL en deux catégories: les DSLs enchâssés (Internal DSL) et les DSLs autonomes (External DSL) 
Sarah.tiir (d) 26 octobre 2011 à 08:38 (CEST)
thread_title:  Types de DSL

message: Vu dans l'abstract : 
* Il y a une définition assez intéressante des DSL.
* Il y a aussi quelques points sur la documentation (souvent pauvre) des DSL.
* Des pistes pour construire des langages DSL (utile pour l'article ?)
*: il me semble qu'une description technologique de la mise en oeuvre d'un DSL serait en effet la bienvenue. Gilles.Grimaud (d) 25 octobre 2011 à 11:13 (CEST)
thread_title:  Utilité des DSL 

message: La réalisation de langages dédiés (DSL) diffère de manière fondamentale de celle des langages de programmation traditionnels. Nous décrivons huit motifs récurrents que nous avons identifiés comme étant utilisés pour la conception et la mise en œuvre DSL.
L'article ci dessous  est soit payant, soit accessible directement sur le site de l'auteur.
Aminetiir (d) 24 octobre 2011 à 21:43 (CEST)
thread_title:  Les design patterns des DSL (8 principaux) 

message: 1- Les patterns de Spinellis propose huit design patterns pour les DSLs.
Sarah.tiir (d) 10 novembre 2011 à 10:24 (CET)
thread_title:  Patrons de conception pour les langages dédiés 

message: Qu'est ce qu'un DSL ?
Est ce qu'une librairie d'un langage non dédié, spécifique à un domaine d'application est considérée comme un DSL ? NON sans preuve (Gilles G parce qu'il parle pas anglais).
Clement.mondon (d) 25 octobre 2011 à 09:27 (CEST)
thread_title:  Question relative au DSL 

message: Outre ces bénéfices, les DSL ont démontré également un potentiel intéressant en termes de productivité, de réutilisabilité et de fiabilité.
(en) Juha-Pekka Tolvanen et Steven Kelly, « Integrating models with domain-specific modeling languages », dans SIGPLAN., 2008, p. 448 [texte intégral, lien DOI]
=== Inconvénients ===
Au niveau de la performance, les programmes développés dans des DSL utilisent habituellement moins efficacement le temps processeur, étant à un plus bas niveau d'abstraction et souvent interprétés, par rapport aux langage généralistes disposant la plupart du temps de compilateurs optimisants ou de machines virtuelles très performantes, comme la machine HotSpot dans le cas de Java.
Sarah.tiir (d) 26 octobre 2011 à 08:38 (CEST)
thread_title:  Avantages et inconvénients 

message: Au niveau de la performance, les programmes développés dans des DSL utilisent habituellement moins efficacement le temps processeur, étant à un plus bas niveau d'abstraction et souvent interprétés, par rapport aux langage généralistes disposant la plupart du temps de compilateurs optimisants ou de machines virtuelles très performantes, comme la machine HotSpot dans le cas de Java.
Sarah.tiir (d) 26 octobre 2011 à 08:38 (CEST)
thread_title:  Inconvénients 

message: L’avantage majeur de cette approche est qu’elle permet de profiter de l’infrastructure, des caractéristiques et des outils de développement du
langage hôte. Ainsi, le développeur n’a pas à définir une grammaire ni à créer les outils de support pour son DSL.
Sarah.tiir (d) 12 novembre 2011 à 16:34 (CET)
thread_title:  Avantages DSL interne 

message: * Dans un DSL externe, la syntaxe du langage pourra représenter tout concept qu'il sera souhaitable d'utiliser avec le domaine ciblé, permettant d'exprimer pleinement ce dernier en utilisant les termes et symboles qui lui sont propres.
* Le langage n'étant pas lié à un langage hôte, il ne devrait pas souffrir de biais de mise en œuvre ou de compromis liés à l'environnement dans lequel il sera intégré, notamment au niveau de la syntaxe ou de la plateforme cible.
Sarah.tiir (d) 8 novembre 2011 à 09:16 (CET)
thread_title:  Avantage DSL externe 

message: Bonjour,
Aprés une rapide relecture, j'ai placé quelques petites  pour vous demandez de précisez vos sources, par-ci, par-là.
En général, vous faites un bon usage des sources et du modèle  à ceci prés que vous pointez le prénom et le nom du premier auteur, alors qu'il ne faut mettre que le nom du premier auteur. Merci de corriger ça. 
Jetez un coup d'oeil, aussi, au début de la section Historique, j'y ai laissé une remarque en commentaire. 
Bonne contribution,
Gilles.Grimaud (d) 17 novembre 2011 à 16:41 (CET)
replies: text: Bonjour, c'est corrigé :)  Aminetiir (d) 19 novembre 2011 à 00:08 (CET)
thread_title:  A propos des références 

message: * Vous faites un lien direct, depuis le texte, vers la homepage de Gilles Muller. C'est inapproprié, pointez sa page en lien externe. 
: Corrigé :) Aminetiir (d) 20 novembre 2011 à 11:02 (CET)
replies: text: Corrigé Aminetiir (d) 20 novembre 2011 à 10:44 (CET)

text: J'ai remplacé ma phrase par la votre qui est bien mieux formulé effectivemen et corrigé les fautes :)Aminetiir (d) 20 novembre 2011 à 10:52 (CET)

text: Le problème, c'est que les publications sont anglais et que l'on ne fait que traduire. Ce n'est donc pas la définitions du G Muller mais une simple traduction/interprétation. Après si ça ne dérange pas, je peux faire ça sous forme de citation mais je trouve que ce n'est pas rapporter exactement sa parole.Aminetiir (d) 20 novembre 2011 à 10:52 (CET)
thread_title:  section : Définition 

message: Vous dites : « La réalisation de langages dédiés (DSL) diffère de manière fondamentale de celle des langages de programmation traditionnels. » Mais vous ne développer pas d'avantage ce point et vous parlez ensuite des difficultés à concevoir des DSLs. Si la réalisation des DSL diffère de manière fondamentale de celle des langages de programmation traditionnels, le lecteur est en droit d'apprendre "en quoi elle différe" !
:Ah bon ? le lecteur a des droits ? ;) Aminetiir (d) 24 novembre 2011 à 19:37 (CET)
thread_title:  Section : Constructions d'un langage DSL 

message: J'ai procédé à la correction (pour la plus grosse partie) de ce texte, mais ce n'est pas satisfaisant, l'article étant en cours de rédaction/relecture sur le fond, et donc non stable. S'y ajoute un éventuel de copyvio abordé en PDD, dont on ne saura s'il est résolu qu'à l'issue de la rédaction de l'article. En l'état, cela semble être du temps perdu que de continuer tant que des modifications ont lieu. Les raisons de le demande de révision n'étant pas identifiées, il faudrait plonger dans l'historique de l'évolution de l'article pour repérer le proposant et comprendre le besoinDeuxtroy (d) 8 décembre 2011 à 20:20 (CET)
thread_title: Instabilité

message: L'article me semble scolastique, et mon expérience en la matière me suggère quelques remarques
* la plupart des milliers de langages dédiés n'existent que le temps d'une thèse ; ceux qui perdurent sont en rapport avec une communauté professionnelle
** qui ne veut pas s'encombrer de concepts inutiles
** qui tient à ses conventions typographiques, son jargon (plutôt que celui des informaticiens ou des mathématiciens), ses stratégies, ses méthodes standards (langage pour la spectrographie nucléaire, la simulation urbaine, la commande d'installations musicales, la programmation de banc d'essais de réacteurs...)
** qui peut désirer une certaine confidentialité garantie d'efficacité, d'avance technologique... et de secret (Mortran chez Tektronix, Algol 6500 chez Burroughs, Clascal chez Apple, Atlas au GIFAS, LIS chez CII, LTRV3...);
* une certaine CAO de ces langages est possible, et facilite un développement rapide si la discussion des spécifications s'appuie sur un prototypage exploitant la méta-compilation, avec des outils dans la lignée par exemple des Compiler Design Language(s) de C.H.A. Koster (Nimègue) ou du Langage d'Ecriture de Traducteurs de J.Beney, plus intégrés que les outils unix -- afin d'obtenir, comme demandait cet industriel, "un langage stable mais vivant"
* les langages dédiés ont beaucoup d'avenir s'ils facilitent la déprogrammation, l'utilisateur exprimant le quoi, et une compilation intelligente s'occupant du comment ; le problème connait alors 2 difficultés : la base de connaissances "corpo" que doit utiliser le compilateur pour le traitement pragmatique, et la bibliothèque au service de l'exécutif ; mais c'est une des voies vers un vieux rêve : l'utilisateur exprime ses besoins dans sa langue  voire son jargon, le système se débrouille.
--Lf69100 (discuter) 23 mai 2015 à 01:24 (CEST)
thread_title:  Quelques Remarques