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

C++ Discussion :

Bjarne Stroustrup publie les fonctionnalités proposées pour C++ 17


Sujet :

C++

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2014
    Messages
    1 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 1 089
    Points : 26 554
    Points
    26 554
    Par défaut Bjarne Stroustrup publie les fonctionnalités proposées pour C++ 17
    Bjarne Stroustrup publie les fonctionnalités proposées pour C++ 17 :
    amélioration du code pour les logiciels à grande échelle, simplification de la STL, mappage direct au hardware…

    C++ qui est un langage de programmation comptant à son actif une forte communauté de développeurs a connu sa dernière version majeure en 2011 avec l’introduction de nouvelles bibliothèques. Depuis cette date, une seule itération a vu le jour en 2014 avec la sortie de C+ +14.

    Le prochain standard étant fixé pour 2017, Bjarne Stroustrup a annoncé il y a quelques jours un ensemble de nouvelles fonctionnalités qu’il souhaiterait voir intégrer afin d’incrémenter les anciennes spécificités de ce langage pour obtenir la version C++17.

    De manière succincte, on note au nombre de ces propositions, une amélioration du support pour les logiciels à grande échelle. Les développeurs d’applications pour le Cloud peuvent déjà afficher le sourire avec cette annonce.

    Un clin d’œil est également fait à l’endroit de la simplification de l’utilisation du noyau du langage, et surtout pour ce qui concerne la Standard Template Library (STL) qui est une bibliothèque standard offrant aux développeurs de puissants outils tels que les modèles de classes, les fonctions génériques telles que les conteneurs et les algorithmes.

    Avec C++11, on a eu droit à l’introduction de classes de bibliothèques, fonctions et modèle pour la gestion concurrente des processus. Avec C++17, cette caractéristique sera améliorée si les propositions de ce dernier sont validées bien entendu et un support pour les modèles de concurrence de plus haut niveau compte être aussi mis en œuvre.

    En outre, l’auteur de ce langage souhaite s’attaquer à d’importantes sources d’erreurs tout en gardant les atouts fondamentaux qui ont fait de C++ un des langages les plus prisés dans le domaine informatique en dépit de l’apparition de nombreux nouveaux langages.

    Enfin, C++ qui est une amélioration de C avec des fonctionnalités du langage de programmation Simula, comporte bon nombre de points similaires avec ces langages cités, même s’il est reconnu qu’un code écrit en C ne s’exécutera pas forcément sans erreurs avec le compilateur C++. Tirant son inspiration de ces langages, Bjarne Stroustrup souhaite pour cette itération, un mappage direct avec le matériel comme c’est le cas en C ainsi qu’une amélioration de l’abstraction afin de tirer le meilleur parti de la même fonctionnalité présente en Simula.

    Il faut également préciser que toutes ces propositions doivent au préalable être validées par le comité qui se réunira la semaine prochaine au Kansas aux États-Unis. Toutefois, Bjarne ne souhaiterait pas voir certains comportements de la part du comité tels que la volonté de satisfaire tout le monde en ne faisant pas le tri des propositions effectuées. De même, il ne souhaiterait pas que le comité tombe dans la facilité en créant une bibliothèque afin d’éviter de l’intégrer comme fonctionnalité à part entière du langage.

    Pour plus d’informations sur l’ensemble des propositions de Bjarne ainsi que ses attentes vis-à-vis du comité vous pouvez consulter cette page.

    Source : Scribd

    Et vous ?

    Que pensez-vous de ces propositions ?
    Quelle fonctionnalité souhaiteriez-vous voir intégrer dans C+ +17 ?
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre émérite

    Inscrit en
    Mai 2008
    Messages
    1 014
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 1 014
    Points : 2 252
    Points
    2 252
    Par défaut
    Ça me semble un *tantinet* ambitieux pour 2017.
    Le C++0x a pris des années de retard et ne contenait même pas le dixième du dixième de ce qui est proposé ici.

    Dans sa liste je vois littéralement une dizaine de feature majeure requérant chacune un travail colossal. Si vraiment le comité arrive à standardiser un truc pareil, ça sera une révolution pour le C++ :

    Modules : Probablement le plus complexe de tous, et pourtant pour le moment qu'un seul proposal assez maigrichon. Une implémentation de test est en cours dans clang depuis plusieurs *années* mais elle est encore assez loin du compte il me semble.
    Transactional memory : Je croyais que c'en était encore à l'état de recherche la TM, une standardisation pour 2017 vraiment !?
    Concepts : A déjà fait tanker une fois le C++0x.
    Uniform call syntax : Très beau et marche vraiment bien en D, mais avec une syntaxe aussi compliqué que le C++, je sens les complications poindrent.
    Pattern Matching : Très intéressant, mais je n'ai même pas encore vu un seul proposal allant dans ce sens, Bjarne a-il un proposal surprise ?
    ASIO : Standardiser tout ASIO, sacré morceau.
    SIMD : Tous les proposals touchant aux SIMD ont été rejeté les un après les autres, je n'ai pas l'impression qu'il y ait le moindre consensus sur le SIMD.
    coroutines : Même topo, il y a plein de proposal concurrent
    Ranges : Rien que la version basique du proposal qui vient augmenter les algos existants de la STL fait déjà 127 (!) pages.

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 393
    Points : 685
    Points
    685
    Par défaut
    Une précision quand même : contrairement à ce que laisse entendre l'article de Dvp, ce ne sont pas des propositions faites par Stroustrup, mais par de nombreux contributeurs, depuis des années (comme l'a dit Arzar, certaines qui datent du C++0x). Stroustup ne fait que citer les proposals qu'il aimerait bien voir ajouté à la prochaine norme.

    Tout comme Arzar, j'ai des doutes. Pas mal de choses ne sont même pas encore implémentées sur compilateur (Clang propose quelques nouvelles features provenant des proposals du C++17, mais on est loin de toutes les proposals dont parle Stroustrup). D'autres choses, comme les TM, nécessite le concours de fabricants de matériel (Intel, AMD, etc), c'est toujours difficile d'avoir un consensus.

    Bref, pas d'emballement, on est encore loin (surtout quand on voit le nombre de personnes qui n'ont pas encore assimilé le C++11. Et ne parlons pas du C++14)

  4. #4
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 750
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 750
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Pour info :
    Modules : Microsoft bosse aussi sur sa version
    ASIO : en février dernier à Cologne il y a eu pas mal de boulot de fait
    les concepts "lite" devraient sortir cette année sous forme de TS
    Transactional memory : je sais pas où ça en est mais y'a du monde dessus (IBM)

    La sortie de C++11 a incité beaucoup de monde a venir grossir les effectifs. Voir la liste des study groups aujourd'hui :
    https://isocpp.org/std/the-committee

    Donc on ne peut pas vraiment comparer à C++0x même si c'est vrai que ça reste un sacré challenge de faire évoluer un tel langage !

  5. #5
    Membre expérimenté Avatar de Firwen
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2009
    Messages : 472
    Points : 1 587
    Points
    1 587
    Par défaut
    Modules : Probablement le plus complexe de tous, et pourtant pour le moment qu'un seul proposal assez maigrichon. Une implémentation de test est en cours dans clang depuis plusieurs *années* mais elle est encore assez loin du compte il me semble.
    Transactional memory : Je croyais que c'en était encore à l'état de recherche la TM, une standardisation pour 2017 vraiment !?
    Concepts : A déjà fait tanker une fois le C++0x.
    Uniform call syntax : Très beau et marche vraiment bien en D, mais avec une syntaxe aussi compliqué que le C++, je sens les complications poindrent.
    Pattern Matching : Très intéressant, mais je n'ai même pas encore vu un seul proposal allant dans ce sens, Bjarne a-il un proposal surprise ?
    ASIO : Standardiser tout ASIO, sacré morceau.
    SIMD : Tous les proposals touchant aux SIMD ont été rejeté les un après les autres, je n'ai pas l'impression qu'il y ait le moindre consensus sur le SIMD.
    coroutines : Même topo, il y a plein de proposal concurrent
    Ranges : Rien que la version basique du proposal qui vient augmenter les algos existants de la STL fait déjà 127 (!) pages.

    > Transactional memory : C'est déja supporté par GCC depuis la 4.7 ou 4.8 si je ne dis pas de bétise.

    > Pattern Matching : Bjarne fournit sa propre lib qui permet de faire ça via du C++11 standard. L'intégrer proprement au langage en lui même ne devrait pas être un gros problème.

    > ASIO : Complétement, surtout que ASIO est un monstre qui aurait bien besoin d'un petit redesign avant toute standardisation.


    Un peu triste que les efforts pour standardiser / améliorer l'ABI soient passés à la trappe..... Le Pimpl et le signal/slot a encore de beaux jours devant lui...
    It's not a bug, it's a feature

  6. #6
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 750
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 750
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Une petite vidéo de 20 min sur les évolutions en cours pour C++17 (interview de Gabriel Dos Reis):
    http://channel9.msdn.com/Shows/C9-Go...Preview-of-C17

Discussions similaires

  1. API pour connaître les fonctionnalités existants dans un site web
    Par imedad dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 22/03/2007, 19h20

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