
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 |
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 ?



Voir aussi :




Vous avez lu gratuitement 12 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.