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

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Actualité : Boost 1.37 est disponible en version Beta

Le , par Alp

0PARTAGES

1  0 
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++.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de epsilon68
Membre expérimenté https://www.developpez.com
Le 23/10/2008 à 21:00
tu peux donner des examples sur Boost.proto?
0  0 
Avatar de Alp
Expert éminent sénior https://www.developpez.com
Le 23/10/2008 à 21:05
Le Hello World de la doc :
Code : Sélectionner tout
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;
}
0  0 
Avatar de epsilon68
Membre expérimenté https://www.developpez.com
Le 24/10/2008 à 21:28
ca a l'air hyper ... complexe
mais a quoi ca sert concretement ?
0  0 
Avatar de Alp
Expert éminent sénior https://www.developpez.com
Le 24/10/2008 à 23:37
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_...cific_Language
Le Embedded implique simplement que le tout sera directement écrit dans ton C++.
0  0 
Avatar de Klaim
Membre expert https://www.developpez.com
Le 25/10/2008 à 1:48
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)?
0  0 
Avatar de Alp
Expert éminent sénior https://www.developpez.com
Le 25/10/2008 à 10:49
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++.
0  0 
Avatar de loufoque
Expert confirmé https://www.developpez.com
Le 25/10/2008 à 13:31
Pour Processing je vois même pas pourquoi t'aurais besoin d'un DSEL, c'est juste une API.
0  0 
Avatar de Klaim
Membre expert https://www.developpez.com
Le 26/10/2008 à 0:42
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?
0  0 
Avatar de Alp
Expert éminent sénior https://www.developpez.com
Le 26/10/2008 à 0:54
Oui mais un DSEL permet de définir un langage, et ce à l'intérieur de C++. Une API fournit juste des classes/fonctions.
0  0 
Avatar de Klaim
Membre expert https://www.developpez.com
Le 26/10/2008 à 0:57
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).
0  0