Journal Des nouvelles de boost

Post√©¬†par¬† (site web personnel) . Licence CC¬†By‚ÄĎSA.
√Čtiquettes¬†:
21
23
fév.
2021

Bonjour Nal,

Je ne fais plus de C++ depuis longtemps, mais je regarde parfois l'actualité de ce langage.

Sa meilleure bibliothèque est sortie en version 1.75 depuis et propose des nouveautés intéressantes:

Tout d'abord un parseur JSON vraiment simple:

auto george = boost::json::parse( R"( { message: "Monde de merde" } )" );
std::cout << george["message"] << std::endl;

Ensuite un gestionnaire d'erreur qui ressemble un peu à ce que fait Go avec des valeurs de retours multiples.

D'autres libs plus anciennes sont régulièrement mises à jour, par exemple :

  • beast pour faire des clients et serveurs http mieux qu'en Node.js¬†;
  • smart_ptr pour √™tre plus memory safe que Rust tout en gardant un langage plus simple et portable;
  • tribool pour les non binaires, les centristes et les ind√©cis¬†;
  • et bien plus encore.
  • # Plus simple

    Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†10.

    smart_ptr pour être plus memory safe que Rust tout en gardant un langage plus simple et portable;

    Langage plus simple. C++.
    J'ai ri.

    • [^] # Re: Plus simple

      Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†10.

      Plus memory safe, c'est aussi un bel appel au troll !

      • [^] # Re: Plus simple

        Post√©¬†par¬† . √Čvalu√©¬†√†¬†5.

        Pourtant, on n'est pas encore vendredi. N'aurions-nous pas à faire à une moule précoce ?

  • # Boost ? √Ä r√©fl√©chir avant d'utiliser

    Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†4.

    Tout d'abord un parseur JSON vraiment simple:

    Bof, comme d'habitude il est atteint de la surconception connu de chez Boost. L'API de nlohmann-json est bien plus facile. En revanche son implémentation et sa quantité de fonctionnalités annexe est similaire à une centrale à charbon, ce n'est plus un parseur JSON mais un véritable framework. Dommage.

    beast pour faire des clients et serveurs http mieux qu'en Node.js ;

    Désolé mais ce n'est pas le cas. J'ai déjà essayé et c'est tellement bas niveau que tu perds plus de temps à écrire le code de gestion HTTP que de coder ton application. Node.js n'est pas mieux, mais Beast n'est clairement pas mieux que Node.js non plus. En plus, son auteur est particulièrement égocentrique.

    smart_ptr pour être plus memory safe que Rust tout en gardant un langage plus simple et portable;

    Les smart pointers existent en standard depuis C++11, aucunement besoin de Boost.

    git is great because linus did it, mercurial is better because he didn't

    • [^] # Re: Boost ? √Ä r√©fl√©chir avant d'utiliser

      Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†10.

      Hmm, tu peux développer le égocentrique ? Est ce que c'est le "It is, after all, the only thing that is asked in return for free software." ? Parce que je vois rien de bien égocentrique dans quoi que ce soit.

      Si je comprends bien il a accept√© de changer de licence et √ßa lui a donn√© du boulot p√©nible au passage (v√©rifier que tout contributeur √©tait d'accord). Poser la question de "pourquoi je dois changer de licence, en quoi la cause d'attribution est un probl√®me" ne me para√ģt pas choquant du tout avant d'entamer un travail de changement de licence. Le taxer d'egocentrisme pour √ßa c'est abus√©.

      • [^] # Re: Boost ? √Ä r√©fl√©chir avant d'utiliser

        Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†4. Derni√®re modification le 24/02/21 √† 08:39.

        Je crois que tu n'as pas lu la bonne personne. Il est venu demander sur le projet Duktape de changer la licence MIT parce qu'il ne l'aime pas.

        L'auteur de Boost.Beast est Vinnie Falco, pas Sami Svaarala (qui lui au passage est une personne formidable).

        git is great because linus did it, mercurial is better because he didn't

    • [^] # Re: Boost ? √Ä r√©fl√©chir avant d'utiliser

      Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†10.

      C'est vrai que Boost a pas mal perdu de son panache depuis C++11.

      J'ai l'impression que l'arriv√©e du parseur Json n'int√©resse pas grand monde et est l√† plus pour combler un manque que pour r√©pondre a un besoin. Aujourd'hui le Json en C++ √ßa se joue plut√īt entre nlohmann-json et simdjson.

      Dans les trucs que j'aimais bien dans Boost il y avait Boost.Signals2 et Boost.Preprocessor. J'avais joué avec Boost.Spirit aussi et j'espère que je n'aurai jamais à y retoucher. À part ça, quelques algorithmes ici et là.

      Et puis quelle galère pour compiler tout ça :(

  • # r√©f√©rence n√©cessaire

    Post√©¬†par¬† . √Čvalu√©¬†√†¬†3.

    pour être plus memory safe que Rust

    Je demande à voir.

    "Quand certains r√Ęlent contre systemd, d'autres s'attaquent aux vrais probl√®mes." (merci Sinma !)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.