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 :

C++ est-il devenu un langage de script ?


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2007
    Messages
    4 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 4 570
    Billets dans le blog
    121
    Par défaut C++ est-il devenu un langage de script ?
    C++ est-il devenu un langage de script ?
    Un développeur estime que la norme C++ 11 a transformé le langage de programmation


    « C++ est devenu un langage de script », titre un développeur du nom de Jussi Pakkanen, dans un billet de blog.

    Sous ce titre, qui pourrait provoquer le courroux de certains utilisateurs du langage, Jussi Pakkanen apporte une analyse objective, qui n’est pas dénuée de tout sens. « Avec la sortie de C++ 11, quelque chose d’extraordinaire s’est produit. L’accent mis sur les bibliothèques utilisables, les types et autres subtilités ont transformé conceptuellement C++ en un langage de script », introduit celui-ci.

    Pour se situer dans le contexte, Pakkanen estime qu’un langage de script diffère d’un langage compilé comme C par les critères suivants :

    • pas de gestion manuelle de la mémoire ;
    • la syntaxe et les fonctionnalités complexes expressives peuvent être mises en œuvre en seulement quelques lignes de code ;
    • des puissantes fonctions de manipulation de chaines ;
    • une grande bibliothèque standard.



    Avec C++ 11, toutes ces exigences deviennent réelles pour C++. Pour appuyer ses propos, Pakkanen présente un bout de code permettant de lire toutes les lignes d’un fichier pour les enregistrer dans un fichier différent (cas concret où se démarquent les langages de script).

    Code c++ : 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
    20
    21
    #include<string>
    #include<vector>
    #include<algorithm>
    #include<fstream>
     
    using namespace std;
     
    int main(int argc, char **argv) {
      ifstream ifile(argv[1]);
      ofstream ofile(argv[2]);
      string line;
      vector<string> data;
      while(getline(ifile, line)) {
        data.push_back(line);
      }
      sort(data.begin(), data.end());
      for(const auto &i : data) {
        ofile << i << std::endl;
      }
      return 0;
    }

    S’il fallait faire la même chose en C, cela devrait prendre beaucoup plus de lignes de code et il serait difficile d’obtenir un résultat pareil, selon Pakkanen. De plus :

    • chaque ligne de code est claire, compréhensible et expressive ;
    • pas de fuites de mémoire ;
    • compilation avec optimisation –O3 proche des performances de Python VM ;
    • meilleures performances que n’importe quel langage de script « non-JITted ».


    Ces changements n’ont pas pour objectif de faire disparaître les langages de script, ironise Jussi Pakkanen, avant de conclure que « C++ peut désormais être utilisé dans les scénarios pour lesquels le langage n’était pas prévu à la base ».


    Source : blog de Jussi Pakkanen


    Et vous ?

    Qu’en pensez-vous ? C++ 11 fait-il de C++ un langage de script ? Pourquoi ?
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par Hinault Romaric Voir le message
    pas de gestion manuelle de la mémoire
    C++ permet de gérer manuellement la mémoire.
    C'est donc plus qu'un langage de script.

  3. #3
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 633
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 633
    Par défaut
    Salut
    Citation Envoyé par oodini Voir le message
    C++ permet de gérer manuellement la mémoire.
    C'est donc plus qu'un langage de script.
    C'est l'éternel problème des verbes pouvoir / devoir / être capable de (permettre / obliger )

    C++ permet la gestion dynamique de la mémoire, mais il faut avouer que tout est fait pour nous inciter à y renoncer aussi souvent que possible.

    En comparaison, dés que l'on atteint un certain degré de complexité (ne serait-ce que le fait d'avoir des chaines de caractères de taille variable, sans même aller jusqu'à l'utilisation du paradigme OO par le développeur ), C nous oblige à gérer la mémoire de manière dynamique

    Ceci dit, LLVM et clang ont clairement démontré depuis belles lurettes qu'il était possible d'utiliser C et C++ en JIT

    Et pour répondre à la question de savoir si C (ou C++) pourrait être un langage de script, j'aurais tendance à dire que seule la présence (ou l'absence) d'un interpréteur fait qu'un langage sera plutôt orienté "script" ou plutôt orienté "compilation".

    Le fait qu'il n'existe (hormis clang) aucun interpréteur pour C ou pour C++ n'indique finalement qu'une seule chose : personne ne s'est, pour l'instant, intéressé à l'éventualité de créer un tel interpréteur

    Bien sur, avec le système d'include, il y a sans doute des barrières difficiles à passer, mais aucune barrière n'est infranchissable par nature
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  4. #4
    Modérateur
    Avatar de Gugelhupf
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    Décembre 2011
    Messages
    1 325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste Programmeur

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 325
    Billets dans le blog
    12
    Par défaut
    Grâce aux pointeurs intelligents (smart pointers), on peut éviter la gestion manuelle de la mémoire, tout en bénéficiant de l'intérêt des pointeurs (ex: polymorphisme).
    Utiliser les pointeurs intelligents permet même de gagner en sécurité, par contre je trouve que c'est plus lourd à écrire que de simples pointeurs.

    des puissantes fonctions de manipulation de chaines ;
    C'est bien d'avoir inclue les Regex, mais pourquoi il n'y a pas de méthode trim() et split() en C++11 ?
    N'hésitez pas à consulter la FAQ Java, lire les cours et tutoriels Java, et à poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 9
    Par défaut
    Si on devait aller dans le sens de la réflexion de Mr. Pakkanen, c'est plutôt la découverte de la meta-programmation statique, les travaux de monsieur Alexandrescu et la libraire Boost qui ont contribué à permettre une nouvelle utilisation du langage et qui aboutirent à la nouvelle spécification du C++.
    Je dirais donc qu'il est en retard dans son analyse.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Et pour conjuguer les deux derniers commentaires, faire du JIT avec de la métaprog... :/

  7. #7
    Membre Expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Par défaut
    Pour ma part je dirais que j'y avais pensé, mais qu'au final non, si on veut faire mieux que son code qui ne fait que lire un fichier, et faire un certain traitement dessus, ça risque de devenir assez moche. Il faut reconnaître que la possibilité de ne pas faire apparaître la gestion de la mémoire manuelle est effectivement possible tout au long de ce traitement. Toutefois, on se préoccupe en réalité beaucoup plus de la gestion de la mémoire qu'on ne le crois : faire un reserve() avant une série de push_back() ça en fait partie. Passer en argument par const& également, ++it au lieu de it++ si on veut aller un peu plus loin. Toutes ces petites habitudes en fait.

    Je ne dirais donc pas un langage de script, toutefois un langage simple d'utilisation, définitivement oui, et ce depuis le C++11. (attention, dès qu'on passe côté créateur les choses sont à nouveau à leur difficulté habituelle). C'est ce qui me fait croire en la possibilité d'un enseignement C++11 pour débutant plus accessible qu'avant.

  8. #8
    Membre expérimenté

    Homme Profil pro
    Etudiant
    Inscrit en
    Juillet 2012
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2012
    Messages : 108
    Par défaut
    Citation Envoyé par germinolegrand Voir le message
    Je ne dirais donc pas un langage de script, toutefois un langage simple d'utilisation, définitivement oui, et ce depuis le C++11. (attention, dès qu'on passe côté créateur les choses sont à nouveau à leur difficulté habituelle). C'est ce qui me fait croire en la possibilité d'un enseignement C++11 pour débutant plus accessible qu'avant.
    Bonjour, je suis d'accord sur le début de ta phrase, mais la fin me rend totalement des nues ; le C++11 permet de faire du code clean, rapide. Bien que certains le pensent fortement, je ne pense pas que celui-ci change la philosophie de base du langage (pour plein de raisons que je pourrais développer dans un autre message) ; concernant le vive du sujet donc l'enseignement, outre ton message, je me souviens que tu pensais et tu avais exposé l'idée suivante (très proche de ton message) que pour un débutant en C++, il vaudrait mieux lui faire apprendre le C++11 (pour des raisons de simplicité, de solutions apportées et nouvelles features et autres...) ;
    Je suis totalement pas d'accord, le debutant en C++, devra toujours se referer au C++03, bien qu'en lui enseignant(le cpp11) tu lui diras, que le code est plus clean, plus rapide à écrire (exemple range for), plus puissant, et autres... ; mais ce dernier devra tout de même comprendre pourquoi c'est le cas, et donc se référer à l'ancienne norme à savoir le C++03 (pour ensuite regarder les solutions, et nvlles features qu'apportent le C++11)

  9. #9
    Membre Expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Par défaut
    Pour ma part, si par langage de script on entend langage qu'on utilise pour ses besoins quotidiens, pour un traitement rapide, alors je répond que oui je l'utilise également ainsi (par exemple j'avais besoin d'un petit script qui transformait des images png en images 16 bits en terme de code asm8086, j'ai écrit ça en moins d'une demi-heure en C++/SFML, intégré ça à mon dépôt, et zou, ça faisait fort bien le travail).

    Pour ce qui est de dire apprendre C++03 avant C++11, c'est exactement comme dire d'apprendre le C avant le C++. C'est utiliser l'approche ascendante. L'approche que je prône est descendante, c'est à dire montrer d'abord comment utiliser quelque chose (du plus utile au plus subtil), puis comment marche ce quelque chose, et enfin comment passer du côté créateur avec cette fonctionnalité.

    Il n'y a aucun intérêt à dire : voilà du code legacy, on va vous apprendre à coder comme ça, ensuite on passera à du code moderne et vous pourrez tout réapprendre et perdre vos mauvaises habitudes.

    L'approche ascendante a un intérêt majeur : on sait ce qu'il se passe dans les dessous de ce qu'on apprend de nouveau. Mais un inconvénient majeur : tant qu'on a pas connaissance complète de tout le haut-niveau, toute cette connaissance du bas-niveau est absolument et fondamentalement inutile en pratique, voire nuisible. Est-il utile de préciser que l'apprenant va s'ennuyer et se décourager à souhait si à chaque fois qu'on monte d'une couche on lui dit : bon tout ce que t'as appris avant, bah on peut faire mieux, plus vite, plus simplement, tu peux réapprendre à coder.

    Et le fait est que l'on aura beau utiliser l'approche ascendante au maximum, dès lors qu'on tombera sur une nouvelle feature qui n'était pas couverte par la base qu'on a eu des couches inférieures, hop on se retrouve en approche descendante qui finalement est plus naturelle (oui, qui donc sur ce forum a appris comment implémenter une std::function avant d'en utiliser une ?).

    Savoir faire un programme qui fonctionne et fait ce que l'on a prévu, voilà quelque chose de plus utile que de perdre son temps à essayer de faire dès le premier coup quelque chose d'optimisé dans les moindres détails, ce qui ne s'apprend en définitive et quoi qu'il arrive qu'avec l'expérience.

    Si l'on vous avait expliqué la physique atomique avant de vous montrer que l'huile ne se mélange pas avec l'eau, il y a fort à parier que l'on se moquerait de votre professeur de physique-chimie pour un bout de temps.

    Si l'on vous avait inculqué les règles de la grammaire avant même de vous avoir appris à vous exprimer, vous n'auriez à mon humble avis pas compris grand chose à la première explication, vous auriez appris à parler avec retard, et il aurait fallu repasser par la case cours de grammaire par la suite de toute façon. Ceci est probablement le parallèle le plus parlant/convaincant que je puisse trouver.

  10. #10
    Nouveau candidat au Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut
    quelqu'un veut voir ce interpreteur du c++ basé sur LLVM/clang
    cling: http://cern.ch/cling
    il'y a des autres mais, j'ai oublié ses noms

  11. #11
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3
    Par défaut
    Entre l'écriture d'un bash de 500 lignes illisibles et non maintenables (utilisant des variables et des tableaux obscurs) et un petit programme en C++, la question du choix du langage peut en effet se poser.
    Pour ma part, j'ai tendance à associer le scripting au côté "interprété" d'un langage, sinon pourquoi ne pas avoir par exemple, des scripts init.d écrits en C++ ? et pour aller plus loin un système d'exploitation dont la configuration ne serait faite que par fichiers xml ?
    Ce que je veux dire c'est que le scripting doit permetre de réaliser des tâches systèmes (déplacement de fichier, lancement de process...etc) spécifiques mais dont le contenu doit rester fonctionnellement simple par souci de maintenabilité.
    Mais bon, je m'éloigne du sujet qui n'est pas "Qu'est-ce qu'un langage de script ?"
    En tout cas je suis d'accord pour dire que le C++
    c'est plus qu'un langage de script

  12. #12
    Membre à l'essai
    Chercheur
    Inscrit en
    Juillet 2010
    Messages
    5
    Détails du profil
    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Juillet 2010
    Messages : 5
    Par défaut Classer un vector<> ?
    Il n'y a que moi que ça choque ?
    Il n'utilise le vector que pour une classification ? C'est pas une list<> qu'il faudrait utiliser afin que ce soit réellement efficace ?

    Après, ne pas donner le critère "exécutable a la volée" dans les critères est un peu abusif pour moi (bien que pour le C++ il y ait CINT).

  13. #13
    Membre Expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Par défaut
    Citation Envoyé par IceFinger Voir le message
    Il n'y a que moi que ça choque ?
    Il n'utilise le vector que pour une classification ? C'est pas une list<> qu'il faudrait utiliser afin que ce soit réellement efficace ?

    Après, ne pas donner le critère "exécutable a la volée" dans les critères est un peu abusif pour moi (bien que pour le C++ il y ait CINT).
    vector est dans une grande majeure partie des cas plus performant que list.

  14. #14
    Membre actif
    Homme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2006
    Messages : 48
    Par défaut
    Citation Envoyé par IceFinger Voir le message
    Il n'y a que moi que ça choque ?
    Il n'utilise le vector que pour une classification ? C'est pas une list<> qu'il faudrait utiliser afin que ce soit réellement efficace ?

    Après, ne pas donner le critère "exécutable a la volée" dans les critères est un peu abusif pour moi (bien que pour le C++ il y ait CINT).
    Il faudrait essayer de trier une list avec sort pour voir ce qui se passe...

  15. #15
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1
    Par défaut
    Titre racol-trolleur, article dénué d'intérêt. Une vraie blague. Pourquoi toujours se tenir à ce type de présentation dans les news de développez.com?
    Un peu d'originalité vous tuerait ?
    Par exemple ces questions niaises à la fin ? "C++ 11 fait-il de C++ un langage de script ? Pourquoi ?".
    Non mais quel humain normalement constitué peut ne pas éclater de rire ?! Et l'auteur, pardon le traducteur (attention aux erreurs de traduction relevées dans les commentaires !) n'a pas honte ?
    C'est quoi le but ? informer les gens ? Dans ce cas là on attendrait un peu de travail en amont. Exemple :
    1) Définir ce qu'est un langage de script
    2) Rappeler brièvement dans quel contexte le c++ est utilisé
    3) Expliquer les avantages / désavantages liés à sortir le C++ de son emploi habituel
    4) Conclure en apportant des éléments de réponses à la question suivante, qui me semble moins absurde que l'originale : "quel intérêt peut avoir un programmeur à utiliser le C++ plutôt qu'un langage de script pour accomplir des tâches de haut niveau"

    Plutôt que ça on a une mauvaise traduction et des blagues. Arrêtez le massacre !

    Un programmeur en colère.

  16. #16
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2007
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 206
    Par défaut
    Si la liste des différences qui, selon Monsieur Pakkanen, existent entre un "langage de script" d'un "langage de programmation", suffisait à définir ce qu'est un langage de script, alors oui, probablement que C++ serait un devenu un langage de script.

    Le problème est que personne ne semble s'entendre sur ce qu'est un langage de script. Selon moi (mais je n'ai bien sûr aucune autorité en la matière), un langage de script se différentie d'un langage de programmation non pas par des caractéristiques intrinsèques mais plutôt par la façon dont le langage est utilisé :
    - si le langage est utiliser pour réaliser un programme destiné à étendre un logiciel existant qui lui fournit un contexte d'exécution, alors le langage est un langage de script (par exemple, un script Python dans OpenOffice, un script VBA dans MSOffice ou un script JavaScript dans une page HTML).
    - si on écrit avec un langage un programme ne dépendant que du système d'exploitation et/ou d'un interpréteur (JVM, .NET, python) alors il s'agit d'un langage de programmation.

    Un langage comme Python par exemple, est soit un langage de programmation soit un langage de programmation de script selon le contexte dans lequel il est utilisé.

  17. #17
    Membre expérimenté

    Homme Profil pro
    Architecture logiciel
    Inscrit en
    Janvier 2013
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

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

    Informations forums :
    Inscription : Janvier 2013
    Messages : 103
    Par défaut
    Au passage avant de répondre, tout langage est compilé. La compilation permet de passer d'un langage source à un langage destination. Il ne faut pas confondre compilation avec compiltation en binaire.

    Qu’en pensez-vous ? C++ 11 fait-il de C++ un langage de script ? Pourquoi ?
    Je pense qu'il faudrait avoir une définition claire d'un langage de script. À cette sauce, presque tous les langages sont des langages de script.
    Un point important, pour moi, quand j'entends script, j'entends surtout langage spécialisé, pas de gestion de mémoire, écriture simple, pas de déclaration des types des variables, etc.
    Maintenant C++ permet d'éviter la gestion de la mémoire (bien que les smart pointers existent depuis bien avant Boost, etc.) et qu'on puisse utiliser l'inférence de type, j'ai encore du mal à rentrer dans mes autres critères : le C++ est un langage très complexe et plein de subtilités. Il nécessite un long apprentissage pour ne pas ressembler à n'importe quoi. C'est toujours d'ailleurs ce qui me fait rire quand je vois des CVs avec écrit expert C++ avec un an d'expérience et quelques heures de cours à l'université.

  18. #18
    Invité de passage

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Par défaut
    Pour commencer, sa définition de ce qu'est un langage de script est très discutable. Je pense personnellement que c'est plus en rapport avec l'usage qu'on en fait qu'avec ses caractéristiques techniques.

    On peut comprendre son message comme : C++ pourrait très bien être utilisé désormais comme langage de script. Sur ce point, je pense qu'il y a des langages plus adaptés.

    Edit : tiens, je me suis fait devancer par ptah35. On est bien d'accord...

  19. #19
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Tous les points qu'il énumère sont déjà présents depuis C++03 voir 98.
    Le code qu'il présente n utilise qu'une toute petite fonctionnalité de C++11 et pourrait se ré-écrire en C++03 sans soucis.

    Bref, il est à coté de la plaque....
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  20. #20
    Expert confirmé

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

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    L'exemple de code donné est très proche du C++ "avant C++ 11" : seule la ligne 17 nécessite d'être modifiée pour compiler en C++ 98...

    C'est à se demander si la grande nouveauté au final c'est pas de mieux mettre en avant une approche qui était déjà là mais qui n'arrivait pas à s'imposer face à l'historique de l'approche "C with classes" ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 15/08/2013, 19h44
  2. Ruby est-il un langage de Script ?
    Par Guilhem89 dans le forum Ruby
    Réponses: 2
    Dernier message: 16/12/2011, 10h46
  3. Définition langage de scripting
    Par Filippo dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 28/12/2004, 09h25
  4. [langage] perl script pour balancer un B-arbre
    Par RonMaster dans le forum Langage
    Réponses: 5
    Dernier message: 22/10/2004, 17h35
  5. [langage] cherche script pour formater une chaine
    Par MASSAKA dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2003, 12h18

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