IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langages de programmation Discussion :

Vers un C++ plus s�r ? La communaut� C++ contre-attaque avec les extensions Safe C++


Sujet :

Langages de programmation

  1. #41
    Membre extr�mement actif
    Avatar de Madmac
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 712
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 712
    Billets dans le blog
    7
    Par d�faut
    Citation Envoy� par mintho carmo Voir le message
    Qu'est-ce que tu racontes ? Les debuggeurs n'ont aucun probl�me � afficher le type et la valeur d'une variable d�clar�e avec auto. Pour au moins ce que j'utilise : MSVC, QtCreator, XCode.
    Tant tu as une expression � droite de la variable qui n'a pas une valeur de retour de type auto. D�sol�, mais je ne vois pas l'int�r�t de ce truc lorsque l'on peut d�j� faire du polymorphisme d'une fa�on plus s�curitaire, avec les objets et l'h�ritage.[/QUOTE]


    Citation Envoy� par mintho carmo Voir le message
    C'est possible selon les cas. Slice existe depuis longtemps en C++. Et pleins de libs proposent cette fonctionnalit�. Et les ranges aussi. Mais c'est pas parce que les devs Ruby trouvent �a �l�gant que les devs C++ aussi. Ou que c'est souhaitable d'avoir �a en C++. Si les devs C++ �taient int�ress�, �a aurait �t� au moins propos�.
    Je ne dis pas qu'il n'existe pas des outils pour travailler avec les intervalles. Je dis que la notation du C++ est archa�que. Il y a un tas de nouvelles id�es qui sont apparus qui auraient pu �tre int�gr� au langage. Si Carbon ne rend pas la programmation plus s�curitaire ou plus ais�e. Il vaut mieux consid�r� Rust que s'embarrasser � utiliser Carbon.

    Et comme Google a l'habitude d'abonner ses projets sans les avoir finaliser. Ce truc est sans int�r�t.


    Citation Envoy� par mintho carmo Voir le message
    Tout le monde s'en tape de Linus. C'est un dev C, son opinion sur le C++ a autant de valeur que celle de mon boulanger.
    Pourtant cela devrait �tre consid�r� dans cette discussion, puisque les "�volutions" sont presqu'uniquemen sur le volet C du langage, plut�t que le volet POO.


    Citation Envoy� par mintho carmo Voir le message
    Hein ???
    WebAssembly fonctionne sur un CPU virtuel. Une version �volu� du Forth. Avec l'�mergence de nouveau type de CPU qui ne sont pas bas�e sur le jeu d'instruction d'intel, il y a beaucoup d'application qui ne seront pas compiler en langage machine dans le futur.

  2. #42
    Membre extr�mement actif
    Avatar de Madmac
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 712
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 712
    Billets dans le blog
    7
    Par d�faut La solution serait peut-�tre de remettre la litt�rature � jour.
    Je suis tomber sur une vid�o. Et le type expliquait qu'il ne fabriquait pas des accesseurs que si c'�tait absolument n�cessaire. Et n'utilisait jamais la directive Private. Est-ce diff�rent de l'enseigenement que vous avez re�u? Ayant d�but� la programmation-object sur Pascal, j'ai toujours trouv� bizarre cette fabrication syst�matique d'accesseurs. Je crois que cette pratique p�nalise la performance des programmes en C++



    La gestion �troite de la m�moire avec le tas et la pile est-elle encore justifable pour des applications ?

  3. #43
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 513
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 513
    Par d�faut
    Citation Envoy� par Madmac Voir le message
    ...
    Je vois que tu as cr�� un fil d�di�, donc j'ai r�pondu l�-bas.

  4. #44
    Membre tr�s actif
    Homme Profil pro
    retrait�
    Inscrit en
    Septembre 2014
    Messages
    643
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : retrait�

    Informations forums :
    Inscription : Septembre 2014
    Messages : 643
    Par d�faut
    Si je connais plusieurs langages de programmation, C et surtout C++ me sont �trangers � 99%. Mais en comparant les deux exemples, j'ai trouv� Carbon bien plus lisible que C++, et j'ai compris le code que fait le premier, pour le C++, non pas tout.

  5. #45
    Membre �prouv�
    Profil pro
    programmeur du dimanche
    Inscrit en
    Novembre 2003
    Messages
    983
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : programmeur du dimanche
    Secteur : Sant�

    Informations forums :
    Inscription : Novembre 2003
    Messages : 983
    Par d�faut
    Citation Envoy� par TotoParis Voir le message
    Si je connais plusieurs langages de programmation, C et surtout C++ me sont �trangers � 99%. Mais en comparant les deux exemples, j'ai trouv� Carbon bien plus lisible que C++, et j'ai compris le code que fait le premier, pour le C++, non pas tout.
    Honn�tement, il y a pas grand chose de fondamentalement r�volutionnaire entre les deux sources, sauf la volont� de remplacer les #include par un gestionnaire de d�pendance.

    Le reste, c'est surtout du sucre syntaxique et �trangement des r�gressions. La syntaxe du c++ est tordue, mais on s'y fait (� reculons pour moi...)

    Le +
    • std:: c'est la gestion des namespace un peu lourde o� les fonctions standards ont un namespace d�di�, alors que carbon les met dans l'espace de nommage courant.
    • span<circle> c'est un template, la fa�on de g�rer la g�n�ricit�... alors que carbon semble utiliser une fonction du langage � la place.
    • cout << : les cr�ateurs du c++ on trouv� que c'�tait g�nial de surcharger << l'op�rateur de d�calage de bit, dans la fonction d'affichage cout, au lieu d'utiliser la notation fonction habituelle...

    Le -
    • auto a disparu (typage automatique). Bon, ensuite auto r�sout un probl�me tr�s c++ d'avoir des types longs � saisir...
    • quand carbon initialise son tableau de Circle, il faut pr�ciser .r=valeur � chaque fois, alors m�me que .r est la seule variable en argument... c'est une �tranget� que je n'ai vue dans aucun autre langage.

  6. #46
    Membre averti Avatar de selmanjo
    Homme Profil pro
    Savant en programmation orient� objet
    Inscrit en
    Janvier 2020
    Messages
    56
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : Savant en programmation orient� objet
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2020
    Messages : 56
    Par d�faut Rust
    En ce moment Rust n'est pas encore enseign� dans mon �cole sup�rieur !
    Je me demande si mon �cole, en ce moment, en parlant de Rust, le verrouille.
    La syntaxe Rustique ne me parait pas facile � appr�hender, mais il y a des
    efforts � fournir pour bien ma�triser ce magnifique langage de programmation.

    Bien que je ne fais que d�buter dessus !

    Maintenant, dans le contexte du changement climatique , Carbon ne me semble
    pas �tre une bonne alternative.

  7. #47
    Chroniqueur Actualit�s
    Avatar de Patrick Ruiz
    Homme Profil pro
    Redacteur web
    Inscrit en
    F�vrier 2017
    Messages
    2 223
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activit� : Redacteur web
    Secteur : Communication - M�dias

    Informations forums :
    Inscription : F�vrier 2017
    Messages : 2 223
    Par d�faut Carbon va-t-il remplacer le C++ ? Le projet Carbon explore une direction future possible pour le C++
    Carbon va-t-il remplacer le C++ ? Le projet Carbon explore une direction future possible pour le C++ �tant donn� les difficult�s � l�am�liorer
    Et mise sur l�interop�rabilit� comme base de travail

    Le langage Carbon est encore exp�rimental. La feuille de route indique la p�riode 2025-2026 pour la sortie de la version 0.2 qui marquera le terme de l�exp�rience. La version 1.0 est attendue apr�s 2026. L�effort est port� par des ing�nieurs logiciels de Google qui ont cess� de participer � la normalisation du C++, ont d�missionn� de leur r�le officiel au sein du comit�. Motif : un vote (au sein du comit� de normalisation) sur la question de la rupture de la compatibilit� ABI en faveur de la performance ne leur a pas donn� raison. C�est de cette m�sentente que na�t le projet Carbon annonc� comme successeur du C++.

    Les d�veloppeurs de Carbon expliquent que certes, le C++ est le langage dominant pour les logiciels � performances critiques, mais son h�ritage et sa dette technique signifient que son am�lioration incr�mentale est une t�che tr�s ardue.

    Carbon est un nouveau langage qui vise � �galer les performances de C++ et � maintenir une interop�rabilit� bidirectionnelle transparente, ainsi qu'une courbe d'apprentissage douce pour les d�veloppeurs C++.

    L'�quipe promet en sus un certain niveau de traduction de source � source pour le code C++. Le projet pr�sente des parall�les avec TypeScript pour les d�veloppeurs JavaScript, ou Kotlin pour les d�veloppeurs Java, bien que la comparaison ne soit pas exacte. Carbon est con�u pour �tre interop�rable avec le code C++ et pour faciliter la migration. La cha�ne d'outils Carbon prendra en charge la compilation du code C++.

    Pourquoi le C++ est-il difficile � am�liorer ? Parce que le langage lui-m�me a commenc� comme une bifurcation du C. Selon l'�quipe Carbon, les concepteurs du C++ ont ajout� plut�t que remplac� des fonctionnalit�s du langage au fil du temps, cr�ant ainsi des interactions complexes entre les fonctionnalit�s. La pr�servation de la compatibilit� binaire est un autre probl�me h�rit�. En outre, le comit� C++ et le processus d'�volution sont orient�s vers la normalisation plut�t que la conception, sont lents et ne parviennent pas toujours � prendre des d�cisions.

    Carbon s'efforce de contourner ces probl�mes en adoptant une nouvelle approche fond�e sur les principes de l'open source. � Nous tenterons m�me de combler une �norme lacune dans l'�cosyst�me C++ avec un gestionnaire de paquets int�gr� �, peut-on lire dans les documents.

    Le langage Carbon sera familier aux d�veloppeurs C++ et C, mais il y a aussi de nombreuses diff�rences. Les fonctions sont d�clar�es avec le mot cl� "fn" et les variables avec "var". Il existe �galement des tuples fortement typ�s. L'inf�rence de type est support�e par le mot cl� "auto". Les pointeurs sont pris en charge, mais pas l'arithm�tique des pointeurs ; les seules op�rations sur les pointeurs sont l'adressage et le d�r�f�rencement. Les classes supportent l'h�ritage simple, mais pas l'h�ritage multiple.
    La s�curit� de la m�moire est une consid�ration importante, mais n'est pas l'objectif initial. � La diff�rence entre l'approche de Rust et celle de Carbon est que Rust commence par la s�curit� et que Carbon commence par la migration �, peut-on lire dans la documentation. L'approche consiste � simplifier le langage afin de cr�er de l'espace pour les fonctionnalit�s de s�curit�, puis � refaire l'ing�nierie des fondations pour mod�liser et appliquer la s�curit�.


    Les d�veloppements autour du langage Carbon interviennent dans o� Rust se d�marque des autres langages pr�sent�s depuis des ann�es comme des alternatives au C et au C++. En effet, le noyau Linux s�ouvre de plus en plus au langage de programmation syst�me de Mozilla.

    Apr�s 31 ans, un deuxi�me langage fait son entr�e pour le d�veloppement du noyau Linux : c�est le Rust. La prise en charge de Rust pour le d�veloppement du noyau Linux est vue comme une � une �tape importante vers la capacit� d'�crire les pilotes dans un langage plus s�r. � Rust de Mozilla Research est le type de langage de programmation auquel ceux qui �crivent du code pour des syst�mes d�entr�e/sortie de base (BIOS), des chargeurs d�amorce, des syst�mes d�exploitation, etc. portent un int�r�t. D�avis d�observateurs avertis, c�est le futur de la programmation syst�me en lieu et place de langages comme le C ou le C++.

    Source : Semaphore

    Et vous ?

    �tes-vous en accord avec l�argumentaire (le langage C++ est difficile � faire �voluer) qui a men� au lancement du projet Carbon ?
    �tes-vous d�veloppeur C++ ? Quelle plus-value reconnaissez-vous � ce projet ? Sinon qu�en attendez-vous ?
    Le projet Carbon vient-il avec une plus-value v�ritable en comparaison � un langage comme le Rust consid�r� le futur pour ce qui est du d�veloppement d�applications syst�me ?

    Voir aussi :

    L'�quipe Microsoft Security Response Center recommande l'utilisation de Rust comme approche proactive pour un code plus s�curis�
    Quel langage pourrait remplacer C ? Apr�s avoir compar� Go, Rust et D, le choix d'Andrei Alexandrescu se porte sur D
    C2Rust : un outil qui permet de faire la traduction et la refactorisation de votre code �crit en langage C vers le langage Rust
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et R�digez des actualit�s

  8. #48
    Membre �m�rite
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    D�tails du profil
    Informations personnelles :
    �ge : 50
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Par d�faut cppfront
    j'ai l'impression, apr�s avoir essay� un peu, que cppfront serait mieux pour migrer du source c++ vers un sous ensemble plus sain.

    De plus, il n'y a rien de fonctionnel dans Carbon, ils sont juste dans le design.

  9. #49
    Membre extr�mement actif
    Avatar de Madmac
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 712
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 712
    Billets dans le blog
    7
    Par d�faut
    Citation Envoy� par grunk Voir le message
    Ce n'est pas un ramasse miette comme on peut en trouver en java mais simplement une comptge de r�f�rence par chaque pointer. Quand le nombre de r�f�rence tombe � 0 le pointer s'auto d�truit. Ca ajoute un l�ger overhead par rapport � un pointer normal (en terme de taille) mais dans la majorit� des cas c'est acceptable. Les situation cible ou ca peut �tre un probl�me sont de toute mani�re g�n�ralement d�velopp�es en C..
    Ce que tu me d�crit ressemble �norm�ment au ramassage Mark and Sweep (https://en.wikipedia.org/wiki/Tracin...mark-and-sweep). Et c'est tr�s ancien et c'est un mod�le qui n'est pas tr�s performant. Oracle a developp� un mod�le concurrent, mais je doute qu'il soit du domaine publique.

    Citation Envoy� par grunk Voir le message
    A la vue de tes exemples je pense que tu ne pratique pas suffisamment le C++ ou en tout cas pas du C++ dit moderne.
    Oui clairement C++ ne deviendra pas Python,Ruby ou un langage fonctionnel en terme de syntaxe (et tant mieux j'ai envie de dire) , mais on est bien loin de ce qu'il a pu �tre.
    Effectivement, je trouve cela souffrant. Si la raret� des librairies n'�taient pas un probl�me important, je l'abandonnerais compl�tement au profit d'Objective C ou de D. Je ne comprend pas pourquoi ces deux langages soit autant ignor�.

    Mais je trouve que la syntaxe n'a pas �volu� en introduisant des simplifications que l'on pourrait consid�r� comme du typage implicite. Si ce fait un boucle d'une longueur de 255, est-ce que c'est vraiment n�cessaire de sp�cifier que c'est un "unsigned Int8"?

    Pourquoi il n'existe pas de Class String et PString Ascii et Unicode optimis�s? Bas� meilleurs algos existants.

    � mes yeux, faire de la programmation object � la fa�on d'Objective C devrait-�tre une possibilit� avec une simple directive de compilation. Apr�s tout, je ne crois pas qu'� l'exception de l'analyseur syntaxique qu'il existe une v�ritable diff�rence entre les deux compilateurs.

    Plut�t que de r�inventer la roue � chaque fois, je trouve que l'accent devrait �tre sur les transpileurs.

    Dans ce fil, je d�cris en quoi les objets sont plus conviviale pour le programmeur en Objet-Pascal: https://www.developpez.net/forums/d2.../#post11929238

    Citation Envoy� par Pyramidev Voir le message
    Je vois que tu as cr�� un fil d�di�, donc j'ai r�pondu l�-bas.
    J'�tais tr�s occup� � l'�poque, je viens de r�pondre.

  10. #50
    Chroniqueur Actualit�s

    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Mars 2013
    Messages
    9 517
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es

    Informations forums :
    Inscription : Mars 2013
    Messages : 9 517
    Par d�faut Les innovations de C++26 : comment les derni�res am�liorations vont transformer le d�veloppement en C++
    Les innovations de C++26 : comment les derni�res am�liorations vont transformer le d�veloppement en C++,
    dans un contexte o� plusieurs entit�s recommandent de remplacer C++ par des alternatives

    Le langage de programmation C++ continue d'�voluer avec l'introduction de nouvelles fonctionnalit�s et am�liorations. La version C++26, bien que toujours en cours de d�veloppement, apporte d�j� plusieurs nouveaut�s : sp�cifier une raison pour la suppression d'une fonction, variables de remplacement sans nom, d�claration d'une liaison structur�e en tant que condition. Mais certains encouragent plut�t le passage � Rust ou Carbon, pourquoi ?

    Sp�cifier une raison pour la suppression d'une fonction

    Depuis le C++11, il est possible de d�clarer une fonction comme supprim�e, afin que le compilateur emp�che son utilisation. Cela peut �tre utilis� pour emp�cher l'utilisation de fonctions membres sp�ciales d'une classe, mais aussi pour supprimer toute autre fonction.

    Introduits en C++11, = default et = delete ont rejoint = 0 en tant que sp�cification alternative possible pour le corps d'une fonction, au lieu d'un corps d'instructions ordinaire entour� d'accolades. La motivation initiale de la d�claration de fonction supprim�e via = delete est de remplacer (et d'annuler) la pratique courante de l'�re C++98/03 consistant � d�clarer les fonctions membres sp�ciales comme priv�es et � ne pas les d�finir afin de d�sactiver leur g�n�ration automatique. Cependant, l'ajout de = delete a acquis un pouvoir encore plus grand, car il peut �tre utilis� pour n'importe quelle fonction, et pas seulement pour les membres sp�ciaux.

    Aujourd'hui, dix ans apr�s l'introduction des fonctions supprim�es, nous pouvons conclure en toute confiance que = delete est devenu l'une des fonctionnalit�s cl�s de C++11 qui a grandement am�lior� l'exp�rience des utilisateurs en cas d'erreurs dans l'utilisation des fonctions de la biblioth�que et a �t� une r�ussite de la r�volution du � C++ moderne �.

    Il y a plusieurs raisons pour lesquelles les fonctions supprim�es ont �t� pr�f�r� aux fonctions traditionnelles priv�es mais non d�finies, notamment une meilleure s�mantique (friend et les autres membres sont toujours inaccessibles, ce qui transforme une erreur de l'�diteur de liens en une erreur � la compilation), de meilleurs diagnostics (au lieu d'erreurs cryptiques � fonction inaccessible �, l'utilisateur sait directement que la fonction est supprim�e) et une plus grande puissance (pas seulement pour les SMF).

    Au lieu d'une erreur d�j� plus conviviale mais toujours un peu �nigmatique � calling deleted function �, les �diteurs veulent permettre directement aux auteurs de biblioth�ques de pr�senter un message suppl�mentaire facultatif qui devrait �tre inclus dans le message d'erreur, de sorte que l'utilisateur connaisse le raisonnement exact de la raison pour laquelle la fonction est supprim�e, et dans certains cas, vers quel remplacement l'utilisateur devrait se diriger � la place.

    Une fonction peut �tre supprim�e comme suit (exemple tir� du document de proposition) :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class NonCopyable
    {
    public:
        // ...
        NonCopyable() = default;
        // les membres de la copie
        NonCopyable(const NonCopyable&) = delete;
        NonCopyable& operator=(const NonCopyable&) = delete;
     
    };

    En C++26, vous pouvez sp�cifier la raison pour laquelle cette fonction est supprim�e :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    class NonCopyable {
    public:
        NonCopyable() = default;
        NonCopyable(const NonCopyable&) = delete("Cette classe gère des ressources uniques, la copie n'est pas supportée; utilisez le déplacement à la place.");
        NonCopyable& operator=(const NonCopyable&) = delete("Cette classe gère des ressources uniques, la copie n'est pas supportée; utilisez le déplacement à la place.");
    };


    Variables de remplacement sans nom

    Il existe des cas o� une variable doit �tre d�clar�e sans que son nom soit utilis�, comme dans les liaisons de structure ou les verrous (lock_guard). C++26 introduit la possibilit� d�utiliser un seul trait de soulignement (_) pour d�finir une variable sans nom.

    Par exemple, dans l'exemple suivant, unused est une variable qui n'est pas utilis�e :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    [[maybe_unused]] auto [data, unused] = get_data();

    En C++26, la variable unused peut �tre nomm�e _ (simple trait de soulignement) :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    auto [data, _] = get_data();

    Lorsque l'identificateur de soulignement unique est utilis� pour la d�claration d'une variable, d'une variable membre de classe non statique, d'une capture lambda ou d'une liaison de structure, l'attribut [[maybe_unused]] est implicitement ajout�, il n'est donc pas n�cessaire de l'utiliser explicitement.

    Une d�claration portant le nom _ est dite ind�pendante du nom si elle d�clare :
    • une variable avec une dur�e de stockage automatique
    • une liaison de structure, mais pas dans un espace de noms
    • une variable introduite par une capture init
    • un membre de donn�es non statique

    Le compilateur n'�met pas d'avertissement quant � l'utilisation ou non d'une d�claration ind�pendante du nom. De plus, plusieurs d�clarations ind�pendantes du nom peuvent �tre utilis�es dans la m�me port�e (qui n'est pas une port�e d'espace de noms) :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    int main()
    {
      int _;
      _ = 0;         // OK
      std::string _; // OK, parce que _ est une déclaration indépendante du nom
      _ = "0";       // Erreur : référence ambiguë au caractère générique « _ », qui est défini plusieurs fois.
    }

    En revanche, ce qui suit n'est pas possible :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    int main()
    {
      int _;
      _ = 0;                // OK
      static std::string _; // Erreur : les variables statiques ne sont pas indépendantes du nom
    }

    L'op�ration suivante n'est pas non plus possible, car les d�clarations se trouvent dans un espace de noms :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    namespace n
    {
      int f() {return 42;}
      auto _ = f(); // OK
      auto _ = f(); // Erreur : redéfinition de _
    }


    D�claration d'une liaison structur�e en tant que condition

    Une liaison de structure d�finit un ensemble de variables li�es � des sous-objets ou � des �l�ments de leur initialisateur.

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    auto [position, length] = get_next_token(text, offset);

    Une liaison de structure peut appara�tre dans une d�claration for-range, comme dans l'exemple suivant :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    for (auto [position, length] : tokenize(text, offset))
    {
      std::println("pos {}, len {}", position, length);
    }

    En revanche, les variables peuvent appara�tre dans la condition d'une instruction if, while ou for :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    if (auto it = std::find_if(begin(arr), end(arr), is_even); it != std::end(arr))
    {
      std::println("{} est le premier nombre pair", *it);
    }

    Cependant, les liaisons de structure ne peuvent pas �tre d�clar�es dans la condition d'une instruction if, while ou for. Cela change en C++26, ce qui rend la chose possible :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    if(auto [position, length] = get_next_token(text, offset); position >= 0)
    {
      std::println("pos {}, len {}", position, length);
    }

    Un cas int�ressant et tr�s utile est pr�sent� dans le document de proposition (P0963). Consid�rons l'exemple C++26 suivant pour l'utilisation de std::to_chars :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if (auto result = std::to_chars(p, last, 42))
    {
    ​​​​    auto [ptr, _] = result;
    ​​​​    // ok pour continuer
    ​​​​} 
    else 
    {
    ​​​​    auto [ptr, ec] = result;
    ​​​​    // gestion des erreurs
    ​​​​}

    Lorsque la fonction r�ussit, seul le membre ptr de std::to_chars_result nous int�resse, car il contient un pointeur sur le pointeur de fin de ligne des caract�res �crits. Si la fonction �choue, nous devons �galement examiner le membre ec (du type std::errc) qui repr�sente un code d'erreur.

    Ce code peut �tre simplifi� avec des liaisons de structure, en C++26, comme suit :

    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    ​​​​if (auto [ptr, ec] = std::to_chars(p, last, 42))
    {
    ​​​​    // ok pour continuer
    ​​​​} 
    else 
    {
    ​​​​    // gestion des erreurs
    ​​​​}

    Nom : simple.png
Affichages : 100878
Taille : 9,9 Ko

    Le projet Carbon, un successeur exp�rimental du C++, explore une direction future possible pour le C++ �tant donn� les difficult�s � l'am�liorer

    En f�vrier 2020, un vote crucial a eu lieu au sein du comit� de normalisation du C++ sur la rupture de la compatibilit� ABI en faveur de la performance. L�initiative principalement pouss�e par les employ�s de Google a �chou�. R�sultat : de nombreux Googlers ont cess� de participer � la normalisation du C++, ont d�missionn� de leur r�le officiel au sein du comit�, et le d�veloppement de clang a consid�rablement ralenti. C�est de cette rupture que na�t le projet Carbon annonc� comme successeur du C++. L�objectif : explorer une direction future possible pour le C++ �tant donn� les difficult�s � l�am�liorer. Le projet Carbon mise sur l�interop�rabilit� avec le C++ comme base de travail.

    Les d�veloppeurs de Carbon expliquent que certes, le C++ est le langage dominant pour les logiciels � performances critiques, mais son h�ritage et sa dette technique signifient que son am�lioration incr�mentale est une t�che tr�s ardue. Carbon est un nouveau langage qui vise � �galer les performances de C++ et � maintenir une interop�rabilit� bidirectionnelle transparente, ainsi qu'une courbe d'apprentissage douce pour les d�veloppeurs C++.

    L'�quipe promet en sus un certain niveau de traduction de source � source pour le code C++. Le projet pr�sente des parall�les avec TypeScript pour les d�veloppeurs JavaScript, ou Kotlin pour les d�veloppeurs Java, bien que la comparaison ne soit pas exacte. Carbon est con�u pour �tre interop�rable avec le code C++ et pour faciliter la migration. La cha�ne d'outils Carbon prendra en charge la compilation du code C++.

    Pourquoi le C++ est-il difficile � am�liorer ? Parce que le langage lui-m�me a commenc� comme une bifurcation du C. Selon l'�quipe Carbon, les concepteurs du C++ ont ajout� plut�t que remplac� des fonctionnalit�s du langage au fil du temps, cr�ant ainsi des interactions complexes entre les fonctionnalit�s. La pr�servation de la compatibilit� binaire est un autre probl�me h�rit�. En outre, le comit� C++ et le processus d'�volution sont orient�s vers la normalisation plut�t que la conception, sont lents et ne parviennent pas toujours � prendre des d�cisions.

    Carbon s'efforce de contourner ces probl�mes en adoptant une nouvelle approche fond�e sur les principes de l'open source. � Nous tenterons m�me de combler une �norme lacune dans l'�cosyst�me C++ avec un gestionnaire de paquets int�gr� �, peut-on lire dans les documents.


    La Maison Blanche invite les d�veloppeurs � abandonner le C et le C++ pour passer � des langages comme le Rust

    Faut-il arr�ter d�initier de nouveaux projets en C ou C++ et passer � Rust ? La question divise dans la communaut� des d�veloppeurs dont certains recommandent le langage Rust plut�t que le C ou le C++. Les raisons : la parit� du Rust en termes de vitesse d�ex�cution en comparaison avec le C ; la s�curisation et la fiabilit� du Rust en comparaison avec C ou C++. La comparaison entre Rust et C++ vient de prendre un coup de neuf avec un rapport de la Maison Blanche sur la s�curisation de la m�moire qui invite les d�veloppeurs � abandonner C ou C++ pour passer � des langages comme le Rust jug�s sup�rieurs pour s�curiser les espaces m�moire des logiciels. C�est une sortie qui fait suite � la prise de position du cr�ateur du langage C++ selon laquelle : � la s�curisation des logiciels par le Rust n�est pas sup�rieure � celle offerte par le C++. �

    Sources : OpenSTD (1, 2, 3), Carbon

    Et vous ?

    Quelle est votre fonctionnalit� pr�f�r�e parmi celles introduites dans C++26 et pourquoi ?
    Comment pensez-vous que la possibilit� de sp�cifier une raison pour la suppression d�une fonction pourrait am�liorer le d�veloppement en C++ ?
    Avez-vous d�j� rencontr� des situations o� les variables de remplacement sans nom seraient particuli�rement utiles ? Pouvez-vous partager un exemple ?
    Pensez-vous que ces nouvelles fonctionnalit�s de C++26 vont simplifier ou compliquer le processus de d�veloppement ? Pourquoi ?
    Quels autres aspects du langage C++ aimeriez-vous voir am�lior�s dans les futures versions ?
    Comment ces nouveaut�s de C++26 se comparent-elles aux am�liorations r�centes d�autres langages de programmation que vous utilisez ?
    Voyez-vous des d�fis potentiels � l�adoption de ces nouvelles fonctionnalit�s dans des projets existants ? Si oui, lesquels ?
    Comment ces am�liorations pourraient-elles influencer votre approche de la programmation en C++ ?
    Que pensez-vous des projets comme Carbon ou des propositions comme celle de la Maison Blanche visant � se d�lester du C++ ?

    Voir aussi :

    Google affirme qu'il est non seulement possible, mais aussi relativement facile de remplacer C++ par Rust dans les firmwares. L'entreprise explique en quoi ce changement est avantageux
    � Les �quipes Rust chez Google sont deux fois plus productives que celles qui se servent de C++ �, d'apr�s un responsable de l'entreprise qui lance le d�bat de la productivit� entre Rust et C++
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et R�digez des actualit�s

  11. #51
    Membre averti
    Femme Profil pro
    �tudiant
    Inscrit en
    Octobre 2012
    Messages
    17
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 17
    Par d�faut
    Ces nouvelles features sont anecdotiques, les variables anonymes pourquoi pas, au moins ils reprennent une convention existante en python.

    Mais concr�tement, C++ serait bien meilleur si on simplifiait sa compilation (un seul compilo multi-plateforme, un gestionnaire de d�pendances simple � utiliser, une structure de projets normalis�e).
    Il faudrait aussi supprimer la syntaxe C (printf et compagnie).

  12. #52
    Membre chevronn�
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Septembre 2019
    Messages
    308
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2019
    Messages : 308
    Par d�faut
    il faudrait surtout "nettoyer" les fonctions existantes, peu utilis�es/utilisables, mais ils ne peuvent s'emp�cher de rajouter de nouvelles variantes de fonctions existantes. Je me demande qui les utilisent r�ellement. Par exemple, il existe maintenant 14 variantes de la fonction replace de std::basic_string !!
    Et pourtant, on n'a toujours pas une fonction simple pour remplacer une ou plusieurs occurrences d'une sous-cha�ne par une autre (case sensitive/insenstive) dans une cha�ne. On n'a toujours pas acc�s non plus � des fonctions de trim. Pour chaque nouveau poste en entreprise, chaque projet utilise soit boost ou a sa propre librairie pour manipuler les string !
    Pendant ce temps, le comit� c++ invente des nouveaux concepts ou des nouvelles variantes de fonctions que je n'ai personnellement jamais crois�es dans aucun projet. J'ai pourtant plus de 20 ans d'exp�rience !

  13. #53
    Membre �prouv�
    Homme Profil pro
    D�veloppeur
    Inscrit en
    Ao�t 2003
    Messages
    1 500
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activit� : D�veloppeur

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 1 500
    Par d�faut
    Quels autres aspects du langage C++ aimeriez-vous voir am�lior�s dans les futures versions ?
    Un gestionnaire de d�pendances, je n'ai fais plus de C++ depuis 2006 mais j'ai parfois cherch� � compiler certains programmes et c'est une gal�re � chaque fois car la biblioth�que manquante n'�tait pas clairement not�e : il faut se baser sur le nom du fichier ou chercher dans le makefile et �a demande du temps � chaque fois.

  14. #54
    Membre confirm�
    Homme Profil pro
    D�veloppeur en syst�mes embarqu�s
    Inscrit en
    Mai 2015
    Messages
    340
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activit� : D�veloppeur en syst�mes embarqu�s

    Informations forums :
    Inscription : Mai 2015
    Messages : 340
    Par d�faut Ce n'est que mon opinion...
    Bjarne Stroustup, le cr�ateur original de C++, a d�nonc� lui-m�me la d�rive qu'a prit le comit� qui dirigent les �volutions de C++.
    Ils leurs reproche d'ajouter des micro-fonctionnalit�s, qui ne sont utilent qu'� 0,01% des projets ou des d�veloppeurs, et qui pourrait �tre d�j� fait avec l'existant. En fait, le C++ est maintenant pilot� par un comit� de gens certes tr�s comp�tants, mais qui font de la masturbation intellectuel pour pondre des concepts qui sont tr�s �loign�s de ce dont ont besoin les d�veloppeurs dans le monde r�el.

    C'est malheureux, car voil� un langage qui avaient du succ�s, qui r�pondait � un besoin, mais qui va crouler sous sont propre poids.

    B�V et Peace & Love.

  15. #55
    Membre averti
    Profil pro
    Inscrit en
    F�vrier 2003
    Messages
    29
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2003
    Messages : 29
    Par d�faut
    Pour remplacer le C++ n'y a-t-il pas d�j� le langage D ? C'est en tout cas son ambition affich�e.

    Quitte a repenser le C++, ce serait judicieux d'�viter de cr�er un langage a la syntaxe moche.
    Car, selon moi, ce qui a fait le succ�s des langages comme Java et C# c'est aussi la lisibilit� de leurs syntaxes.
    Et je ne parle m�me pas du fait que l'adoption d'un nouveau langage tien aussi au fait que chaque instruction soit non seulement document�e mais surtout accompagn�e d'un exemple pratique et utile (codes snippets), afin de faciliter la mise en pratique.

  16. #56
    Membre �clair�
    Profil pro
    retrait�
    Inscrit en
    D�cembre 2010
    Messages
    863
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : retrait�

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 863
    Par d�faut
    Quitte a repenser le C++, ce serait judicieux d'�viter de cr�er un langage a la syntaxe moche.
    Quand j'ai dit cela � propos de Rust, en disant que c'�tait dommage de ne pas avoir conserv� une syntaxe "C like" on m'a "moins�" sans donner de contre argument. On est donc d'accord, et effectivement si java, C# ont d�coll� c'est en partie gr�ce � cela. Il suffit de regarder le Go, tr�s performant aussi, il a plus de mal � d�coller.

  17. #57
    Membre confirm�
    Homme Profil pro
    D�veloppeur en syst�mes embarqu�s
    Inscrit en
    Mai 2015
    Messages
    340
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activit� : D�veloppeur en syst�mes embarqu�s

    Informations forums :
    Inscription : Mai 2015
    Messages : 340
    Par d�faut Ce n'est que mon opinion...


    Citation Envoy� par Brunoo Voir le message
    Pour remplacer le C++ n'y a-t-il pas d�j� le langage D ? C'est en tout cas son ambition affich�e.
    D aurait pu �tre ce "nouveau C++", mais il n'a pas d�coll�, parce qu'au moment o� il est sorti:

    • il n'�tait pas r�trocompatible avec le C
    • C++ n'�tait pas encore devenu le monstre qu'il est aujourd'hui, et a prit naturellement la rel�ve.
    • Gr�ce � sa compatibilit� avec le C, il avait d�j� tout un �co-syst�me, et une communaut� autours de lui.


    Quitte a repenser le C++, ce serait judicieux d'�viter de cr�er un langage a la syntaxe moche.
    Car, selon moi, ce qui a fait le succ�s des langages comme Java et C# c'est aussi la lisibilit� de leurs syntaxes.
    La syntaxe, c'est une affaire de go�t, d'habitude, mais surtout de lisibilit�. Je dis souvent qu'on lit plus souvent son code qu'on ne l'�crit. Java, poss�dait (et poss�de toujours) des atouts, mais:

    • Il est tr�s verbeux, rendant le code "surcharg�" et difficile � lire.
    • Il tourne via une "machine virtuelle", qui m�me si elle poss�ce un JIT maintenant, ce n'�tait pas le cas � ses d�buts.
    • Et � cause du fait qu'il tourne en s'appuyant sur une "machine virtuelle", il ne pouvait et ne peut pas �tre compar� au C/C++ qui peuvent compiler du code natif, pour plusieurs architecture. Il y a toujours un compilateur 'C' pour chaque architecture, de la plus petite � la plus grande.
    • Puis Python est arriv� est s'est fortement implent�. On dit qu'il est lent (parce que lui aussi tourne sur une machine virtuelle), mais il sait tr�s facilemment utiliser du code 'C', ce qui fait que tout traitent "lourd" est souvent ex�cut� � la vitesse du 'C'.


    Pour C#, c'est un peu le "java" de microsoft. La puissance de microsoft est derri�re ce langage, mais lui aussi tourne sur une "machine virtuelle", m�me s'il a maintenant aussi un JIT, il ne peut en rien �tre compar� (tout comme Java), question vitesse, � C/C++. Il a prit de l'importance et est tr�s utilis�, car il y'a microsoft derri�re, est �a "rassure" les entreprises quant � sa p�r�nit�.

    Le Go, je ne connais pas, donc j'�vite de faire des commentaires sur une technologie qui m'est inconnue.

    Et je ne parle m�me pas du fait que l'adoption d'un nouveau langage tien aussi au fait que chaque instruction soit non seulement document�e mais surtout accompagn�e d'un exemple pratique et utile (codes snippets), afin de faciliter la mise en pratique.
    Il n'y a pas que �a, il faut tout un �cosyst�me autours d'un langage. De la doc, oui, mais aussi des librairies, des �diteurs, bref, toute une flopp�e d'outils.
    Il faut aussi cr�er tout une communaut�, qui perdure et sait acceuillir les d�veloppeurs qui se pencheront sur un langage.

    Et un petit dernier pour la route Il n'y a pas langage qui soit adapt� � toutes les situations. Il ne me viendrait pas � l'id�e de faire une grosse application en 'C'. C'est plut�t le C++ qui serait utilis� dans ce cas. Dans le domaine de l'embarqu�, le seul langage que tu es certains d'avoir, c'est le 'C'. Dans le domaine banquaire, c'est toujours du COBOL qui est utilis�. Certains ont bien tent� de r�-�crire les vielles application COBOL en java ou en C++, mais tout les essais ont �chou�s, car c'est tr�s difficile de reconstruire un syst�me qui fonctionne � l'identique.

    Et il y a une grosse masse de code 'C' dans la nature, et on ne remplacera pas celui-ci du jour au lendemain.

    Actuellement, quelques langages se d�marquent des autres:

    • Python chez les "data scientist", et les "ing�nieurs", car il est tr�s simple � �crire et � relire, et � tout ce qu'il faut pour les satisfaire question librairires (numPy par exemple) pour s'affranchir sa "relative" lenteur.
    • lua, est lui aussi un langage "dynamique" comme Python, et est simple � utiliser. Sa machine virtuelle est aussi plus rapide que celle de Python, car c'est une "register based VM", l� ou Python/Javan reposent sur des "stack based VM".
    • C# pour ceux qui ne veulent �tre "rassur�" par le fait que Microsift soit derri�re.
    • Le 'C' reste indispensable gr�ce � sa vitesse, son �co-syst�me, et qu'il reste le plus rapide, car tr�s proche de ma machine. Son d�savantage, c'est que si on ne fait pas tr�s attention, on peut vite introduire des vuln�rabilit�s. Mais dans l'embarqu�, c'est toujours 'LA' r�f�rence, et avec la base de code install�e, il est encore l� pour tr�s longtemps.
    • C++, car (tout comme le C), il il peut produire du code natif et est de ce fait tr�s utilis�. Et il a profit� de la vague POO � ses d�but. Il est �galement tr�s install�.
    • COBOL reste utilis� dans le domaine bancaire.


    Et puis, il y'a maintenant le petit nouveau (enfin, a quand m�me 10 ans) Rust qui peut pratiquement �galer C/C++ niveau vitesse, mais qui est nettement plus s�curis� niveau gestion m�moire et �vite pas mal d'erreurs qu'on peut faire en C/C++, car le langage (et son compilateur) fournira des erreurs et ne compilera pas un code dangereux.

    C'est je pense le seul langage (qui produit du code machine) qui peut/pourra rivaliser avec le C/C++. Je suis en train de me pencher dessus, et pour un vieux d�veloppeur 'C' comme moi, sa "syntaxe" me d�route �norm�ment (mais avec le temps, �a viendra), et il faut parfois se battre avec le compilateur pour qu'il accepte de compiler un code, car les diff�rents verrous qu'il poss�dent pour �tre "s�cure" sont parfois "lourds" a dig�rer pour les vieux d�veloppeurs 'C', qui savent ce qu'il font. Mais on fait tous des erreurs, et si le langage permet d'en �viter, �a ne peut �tre d'une bonne chose.

    [B]Rust[B] est d�routant, et il faut s'accrocher et pers�v�rer, car oui, les concepts qu'il aborde sont trait�s diff�rement que d'autres language, mais rend le code plus "s�cure".

    Mais, je le r�p�te, il n'y a pas de langage meilleurs qu'un autres. Il faut choisir son outils par rapport � ses besoins. On utilise un marteau pour enfoncer un clou, et un tournevis pour viser une vise. L'inverse n'aurait pas de sens.

    B�V et Peace & Love.

  18. #58
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyr�n�es Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par d�faut
    Citation Envoy� par archqt Voir le message
    Quand j'ai dit cela � propos de Rust, en disant que c'�tait dommage de ne pas avoir conserv� une syntaxe "C like" on m'a "moins�" sans donner de contre argument. On est donc d'accord, et effectivement si java, C# ont d�coll� c'est en partie gr�ce � cela. Il suffit de regarder le Go, tr�s performant aussi, il a plus de mal � d�coller.
    En effet certaines choses ne sont pas exactement identiques mais tout l�int�r�t de faire un nouveau langage et que faire des choix mieux adapt�s par d�faut et pas se trainer des sp�cificit�s d'un vieux langage. C'est un gros d�faut du C++ qui se traine l'h�ritage du C.

    Rust n'a jamais pr�tendu �tre un surensemble de C++. Il a quand m�me une syntaxe relativement inspir�e du C++ (acolades, point-virgules, op�rateurs, espace insignifiant, le let n'est pas tr�s diff�rent du auto,...). Il y a des sp�cificit�s mais elles font sens quand on apprend les fonctionnalit�s sp�cifiques du langage.

  19. #59
    Inactif  
    Profil pro
    undef
    Inscrit en
    F�vrier 2013
    Messages
    1 001
    D�tails du profil
    Informations personnelles :
    Localisation : France, Lot (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : undef

    Informations forums :
    Inscription : F�vrier 2013
    Messages : 1 001
    Par d�faut
    Qui peut croire que les politiques savent ce qui est bon pour une industrie? Rust est pouss� par une communaut� actuellement anormalement puissante dans les milieux de pouvoirs ; ce n'est pas un mauvais langage, mais il n'est pas taill� pour la rentabilit�/productivit� et les faits d'armes de ce langage se r�sument � avoir r��crit des choses qui existent d�j� et sans r�elle n�cessit� de r��criture, on peut admirer la complexit� du pattern m�moire r�sultant d'une compilation Rust r�ussie, louer son contr�le de l'espace m�moire... et cela r�pond s�rement aux besoins de certains domaines de pointe (a�rospatial, arm�e...) Mais la seule chance pour Rust de d�passer le C++ c'est que ce dernier devienne aussi compliqu� � appr�hender que l'outsider.

  20. #60
    Membre confirm�
    Homme Profil pro
    D�veloppeur en syst�mes embarqu�s
    Inscrit en
    Mai 2015
    Messages
    340
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activit� : D�veloppeur en syst�mes embarqu�s

    Informations forums :
    Inscription : Mai 2015
    Messages : 340
    Par d�faut Oui et non...
    Citation Envoy� par 23JFK Voir le message
    Mais la seule chance pour Rust de d�passer le C++ c'est que ce dernier devienne aussi compliqu� � appr�hender que l'outsider.
    Malgr� tout le mal que j'ai a comprendre (je ne parle pas d'utiliser, simplement de comprendre) ce que Rust apporte, le C++ n'a pas eu besoin de Rust pour commencer son auto-destruction. Le code C++ est un des plus laid et compliqu� possible, sachant � peine donner un message d'erreur correcte et compr�hensible. J'ai un autre avis sur le C, parce que je l'ai pratiqu� toute ma vie, et il sera l� pour encore tr�s longtemps. Le C++ dispara�tra bien avant le 'C', qui reste compr�hensible et n'a pas tendance a �voluer dans tous les sens.

    B�T et Peace & Love.

Discussions similaires

  1. R�ponses: 0
    Dernier message: 29/11/2011, 09h20
  2. Cr�ation d'une base de donn�es pour g�rer des projets
    Par Rodrigue dans le forum Mod�lisation
    R�ponses: 4
    Dernier message: 19/11/2010, 17h14
  3. R�ponses: 2
    Dernier message: 11/04/2010, 11h53
  4. Besoin de directions de recherches pour mon projet.
    Par RudyWI dans le forum AWT/Swing
    R�ponses: 1
    Dernier message: 19/12/2007, 12h19
  5. R�ponses: 4
    Dernier message: 14/03/2007, 08h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo