GCC 9 sera la première version stable du compilateur à supporter le langage D :
Un nouveau frontend allonge la liste
La collection de compilateurs GNU (GCC) dispose d’un nouveau frontend ; c’est le résultat de l’intégration d’un commit au projet GCC il y a bientôt une semaine, ce, suite au feu vert du GCC Steering Committee.
D’après ce qui ressort du commit, ledit frontend est une redite de celui de GDC – GNU D Compiler. Ce dernier vient allonger une liste dans laquelle on retrouve déjà des frontend pour les langages C (gcc), C++ (g++), Objective-C (gobjC), Objective C++ (gobjC++), Java (gcj), Ada (gnat), Fortran (gfortran) et Go (gccgo). À la réalité, la liste de frontend qui font office de potentiels candidats à une intégration avec la distribution standard de GCC est plus longue. Il s’agit de projets matures ou en cours de développement. On parle ici de GNU Pascal Compiler (GPC), Mercury, Cobol for GCC, GNU Modula-2, GNU Modula-3, GHDL, PL/1 for GCC et GCC Unified Parallel C (GCC UPC).
En 2015, Andrei Alexandrescu a annoncé son départ de Facebook pour se consacrer au développement du langage D en partenariat avec la fondation qui en a la charge. Il fait partie des observateurs qui soutiennent que D fait office de meilleur successeur au langage C que Rust et Go. Une intégration d’un frontend pour le langage D avec GCC est donc de nature à décupler l’intérêt des développeurs pour ce langage, mais il faudra que les intéressés fassent montre de patience. En effet, référence faite aux échanges sur le forum dédié au langage, l’intégration est prévue avec GCC 9. D’après le plan de développement du compilateur, les travaux sur cette version ont débuté le 25 avril dernier. La version stable est attendue pour le premier trimestre de l’année 2019.
Pour ceux qui sont au stade de sa découverte, Le D est un langage de programmation impératif orienté objet et multiparadigme. Il a été conçu pour la programmation système et est inspiré par de nombreux langages dont C, C++ et Java. Illustration avec le fragment de code qui suit :
Code D : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 void main() { import std.stdio, std.string, std.algorithm, std.conv; // Reduce the RPN expression using a stack readln.split.fold!((stack, op) { switch (op) { // Generate operator switch cases statically static foreach (c; "+-*/") case [c]: return stack[0 .. $ - 2] ~ mixin("stack[$ - 2] " ~ c ~ " stack[$ - 1]"); default: return stack ~ op.to!real; } })((real[]).init).writeln; }
Source : dlang.org
Et vous ?
Qu’en pensez-vous ?
Le feu vert du GCC Steering Committee pour l’intégration de GDC avec GCC augmente-t-il la côte du langage D ?
Avez-vous déjà fait usage du langage D ? Si oui, pour quel projet ? Quels retours pouvez-vous faire en termes de comparaison avec le langage C ?
Voir aussi :
Quel langage pourrait remplacer C ? Après avoir comparé Go, Rust et D, le choix d'Andrei Alexandrescu se porte sur D
DMD : le compilateur de référence du langage D est désormais complètement open source, son backend vient de passer sous la Boost License
C2 : un langage qui se présente comme une évolution de C plus rapide, sans fichiers d'en-tête, avec système de build intégré et d'autres changements
Pourquoi les langages C et C++ auraient-ils encore de nombreuses années devant eux ? Donnez votre avis
Partager