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

Boost C++ Discussion :

[Actualité] Boost 1.37 est disponible en version beta !


Sujet :

Boost C++

  1. #1
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut [Actualité] Boost 1.37 est disponible en version beta !
    Bonsoir,

    La nouvelle est tombée aujourd'hui : Boost 1.37 beta est sortie aujourd'hui !

    Vous pouvez la télécharger ici : http://sourceforge.net/project/showf...ease_id=635320

    La grosse nouveauté c'est l'apparition de Boost.Proto comme bibliothèque à part entière !

    Il y a eu beaucoup de retours sur la version 1.36 ce qui a permis de corriger une certaine quantité de bugs et d'améliorer les performances.

    Qui teste en premier ?

    PS : Proto est vraiment bien, je l'ai déjà testée et elle est très bien faite. C'est une bibliothèque qui sert à créer des DSEL (Design Specific Embedded Language), c'est à dire des "langages" à l'intérieur de votre code C++.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    tu peux donner des examples sur Boost.proto?

  3. #3
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Le Hello World de la doc :
    Code : 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
    #include <iostream>
    #include <boost/proto/proto.hpp>
    #include <boost/typeof/std/ostream.hpp>
    using namespace boost;
     
    proto::terminal< std::ostream & >::type cout_ = { std::cout };
     
    template< typename Expr >
    void evaluate( Expr const & expr )
    {
        proto::default_context ctx;
        proto::eval(expr, ctx);
    }
     
    int main()
    {
        evaluate( cout_ << "hello" << ',' << " world" );
        return 0;
    }

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    ca a l'air hyper ... complexe
    mais a quoi ca sert concretement ?

  5. #5
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    A faire des choses comme Boost.Spirit par exemple ?

    Sinon, les DSEL ça sert pour plusieurs choses...
    Je te conseille de lire ça :
    http://en.wikipedia.org/wiki/Domain_Specific_Language
    Le Embedded implique simplement que le tout sera directement écrit dans ton C++.

  6. #6
    Membre expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Points : 3 344
    Points
    3 344
    Par défaut
    Juste pour que ce soit bien clair (je n'ai pas essayé moi même, mais j'ai une idée floue du concept et l'exemple cité est pas super concret), c'est le genre de lib qui permettrait d'aider à implémenter quelque chose comme Processing en c++ (actuellement c'est du java)?

  7. #7
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    On dirait pas, non

    Proto permet de définir des pseudo-langages que l'on peut utiliser à l'intérieur-même de son code C++.

  8. #8
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Pour Processing je vois même pas pourquoi t'aurais besoin d'un DSEL, c'est juste une API.
    Boost ftw

  9. #9
    Membre expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Points : 3 344
    Points
    3 344
    Par défaut
    Oui justement de loin c'est ça qui me parait flou, la différence entre une api et un DSEL. D'ailleurs l'article de wikipedia l'indique aussi, mais bon je donnais Processing a titre d'exemple parceque ça pourrait être un DSEL (sauf si j'ai mal compris le concept ce qui est tout a fait probable).

    En fait peut être que ce qui me semble vraiment flou c'est plutot dans quel cas c'est plus pertinent de faire un DSEL plutot qu'une API? A priori tous les DSEL peuvent être implémentés sous forme d'api non?

  10. #10
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Oui mais un DSEL permet de définir un langage, et ce à l'intérieur de C++. Une API fournit juste des classes/fonctions.

  11. #11
    Membre expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Points : 3 344
    Points
    3 344
    Par défaut
    Je comprends bien, mais la différence reste floue (parceque l'utilisation du language ainsi généré est quasi semblable a première vue).

  12. #12
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Sauf qu'un DSEL peut faire bien plus.
    Compiler des expressions régulières ou des parsers EBNF à la compilation, faire du array programming aussi performant que Fortran, recréer C++ mais de manière retardée en générant des foncteurs, etc.
    Boost ftw

  13. #13
    Membre expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Points : 3 344
    Points
    3 344
    Par défaut
    Ok merci je commence a y voir plus clair...

  14. #14
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Pour ceux qui n'ont pas suivi, ça y est Boost 1.37 a été releasée

    Citation Envoyé par boost.org
    Version 1.37.0 New Library: Proto. Updated Libraries: Asio, Circular Buffer, Dynamic Bitset, Exception, Hash, Interprocess, Intrusive, Math, Type Traits, Unordered

Discussions similaires

  1. Réponses: 38
    Dernier message: 05/07/2016, 13h40
  2. Réponses: 4
    Dernier message: 15/12/2009, 17h34
  3. Réponses: 3
    Dernier message: 09/09/2009, 14h08
  4. Google Insights for Search est disponible en version française
    Par Katleen Erna dans le forum Actualités
    Réponses: 5
    Dernier message: 19/08/2009, 15h05
  5. Réponses: 0
    Dernier message: 05/06/2009, 19h47

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