Jeudi 22 janvier est sortie la version 1.3.0 de vera++ : programme permettant de faire des vérifications de style de code sur du C++. Il est scriptable et permet également la refactorisation de code.
C++ 0xB enfin finalisé ?
À partir de maintenant, seules les corrections mineures pourront être effectuées et Herb Sutter estime que la version finale sortira en 2011.
La norme ayant été élaborée en collaboration proche avec les implémenteurs, la plupart des compilateurs sur le marché ont intégré partiellement la nouvelle norme, certains ajouts à la bibliothèque standard bénéficient même d'une implémentation dans la célèbre collection de bibliothèques Boost dans un espace de nom distinct.
Concours de programmation CodinGame le 22 Février 2014
La prochaine édition de CodinGame, le challenge de code en ligne, aura lieu le samedi 22 Février 2014 à 18h (UTC+1).
L'événement accueillera des développeurs du monde entier pour leur permettre de passer un bon moment, défier leurs pairs, gagner des prix ou entrer en contact avec des sociétés qui leur plaisent et qui recrutent.
Parmi les nouveautés sur la plate-forme :
- Bash arrive parmi les langages disponibles.
- Dart 1.1 et de nouvelles bibliothèques pour Perl ont été ajoutés.
- Le thème de ce challenge est "Ragnarök", issu de la mythologie scandinave. Pour l'occasion, de nouveaux graphismes seront à l'honneur.
C++17 adapte le static_assert() aux usages
Un logiciel libre de coloriage pour enfants et d'apprentissage des départements français
Je viens d'ajouter deux logiciels libres pour Linux (.deb) destinés aux enfants et aux plus grands.
Le premier est un jeu de coloriage destiné aux jeunes enfants comme on pouvait s'en douter.
Le second s'adresse à tout le monde. Il permet de tester ses connaissances sur les départements français.
C'est une excellente façon d'apprendre à localiser les départements les uns par rapport aux autres.
Les 2 logiciels sont écrits en C++ avec Qt 15.05 licence GPL V3.0. avec le code source sur sourceforge.net
Journal CPPP
Demat' iNal,
Ce samedi 15 juin aura lieu à Paris la conférence CPPP. Cette conférence s'adresse à tous ceux qui malgré ce dernier journal ont conservé une tendre affection (ou un syndrome de Stockholm) pour le langage C++.
On notera la présence de plusieurs orateurs anglophones ayant fait des présentations à succès à CppCon:
- Hana Dusíková : Compile Time Regular Expressions
- Kate Gregory : Simplicity: Not Just For Beginners
- Odin Holmes : Type Based Template Metaprogramming is Not Dead
Journal 'Markdown presentation processor' (ou de l'intérêt des fichiers texte).

Cherchant à réaliser une présentation vidéo, et utilisant déjà par ailleurs Writer de Libre Office, je me suis naturellement tourné vers Impress pour cela. C'est peut-être un très bon logiciel dans le genre, mais, personnellement, le fait de devoir m'occuper, en même temps, et du contenu, et de sa mise en forme, le peu de motivation que je pouvais avoir disparaissait comme neige au soleil. C'est la première fois que je rédigeais une telle présentation, et c'est le genre (…)
Journal Alignement chaotic neutre
Demat' iNal,
J'ai récemment eu l'ineffable [1] plaisir de corriger un bug dans LLVM qui m'a causé quelques mauvaises soirées. Afin que l'histoire devienne légende et que la légende fasse mythe, je me décide à vous en raconter quelques détails amusants.
Considérons le bout de code suivant :
#include <string>
#include <boost/align/aligned_allocator.hpp>
constexpr std::size_t align = 32;
template<class T>
using aligned_allocator = boost::alignment::aligned_allocator<T, align>;
using aligned_string = std::basic_string<char, std::char_traits<char>, aligned_allocator<char>>;
aligned_string make_string(int num) {
return aligned_string(num, '\0');
}
#include <iostream>
(…)
Journal Une 20-aine de lignes de code pour le defer de Go en C++

Bonjour Nal,
Si tu es comme moi, tu détestes Go malgré quelques fonctionnalités géniales et un écosystème vaste et grandissant, qui en font un choix à considérer malgré tes préférences personnelles.
Si tu es comme moi, tu préfères certainement le C++ surtout depuis le C++11. Tu fais d'ailleurs surement du C++20 histoire d'être moderne.
Parmi les fonctionnalités de Go que tu apprécies, il y a le mot clé defer
:
func example() error {
rsrc1, err := CreateResource
(…)
Journal BinMake : pour construire un fichier binaire décrit en texte
BinMake est un logiciel libre permettant de créer des fichiers binaires en décrivant par du texte leur contenu.
Il peut également être inclus dans du code C++ et être utilisé comme un flux.
Le texte décrivant le binaire à générer permet d'indiquer des nombres de bases décimale, hexadécimale, octale et binaire, de fournir du texte brute (sur une ligne). Il permet également de modifier l'endianness.
(Il devrait prochainement proposer des nombres flottants et du texte multi-lignes)
Version programme exécutable
La (…)
Journal Des nouvelles de boost

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 (…)
Journal Vous avez dit "caractère" ?

Ces derniers jours, j'ai cherché à mieux comprendre comment gérer UTF-8 dans une de mes applications hobby et j'ai appris pas mal de choses :)
D'abord, j'avais oublié que ASCII était codé sur 7 bits et non pas 8 bits. C'est grâce à ça que UTF-8 est automatiquement compatible avec ASCII (UTF-8 est codé avec des blocs de 8-bits, il leur a suffit de dire que le premier bit est 0 pour les 127 premiers Unicodes encodé en UTF-8).
Les (…)
Journal OSv : l'OS pour les nuages

"Hi, today we've made the first release of OSv, a new operating system for running applications on virtual machines."
Un nouvel OS vient de sortir dédié au cloud. En bon français, on pense que cela ne marchera jamais rien qu'à cause des drivers pléthoriques à écrire (en C++). Mais eux visent uniquement les environnements virtuels. Cela limite donc le développement à 1 ou 2 plateformes (kvm, xen). 2 des codeurs sont des codeurs de KVM.
L'OS est dédié à ne (…)
vcpkg, un gestionnaire de bibliothèque pour C++
Depuis 2016, Microsoft développe vcpkg, un outil bien sympathique qui permet de télécharger et compiler un ensemble de bibliothèques et leurs dépendances. Jusqu’à présent, cet outil était disponible uniquement pour la plate‐forme Windows. Depuis le 24 avril 2018, cet outil prend également en charge les plates‐formes GNU/Linux et macOS. vcpkg est publié sous licence MIT.
Une limite cependant est que la compilation des bibliothèques sur GNU/Linux est uniquement statique. La raison invoquée est qu’il est plus compliqué d’utiliser des bibliothèques sur GNU/Linux (LD_LIBRARY_PATH
, rpath, etc.) que sous Windows, où l’on peut tout mettre dans un seul répertoire.
Quoi qu’il en soit, c’est une bonne nouvelle. Même si les paquets des distributions resteront une source privilégiée pour obtenir les fichiers de développement d’une bibliothèque, vcpkg offre une alternative intéressante pour ceux qui voudraient tout construire en statique de manière à fournir un seul binaire pour toutes les variantes de GNU/Linux.
Concours de programmation CodinGame le 25 Janvier 2013
La prochaine édition de CodinGame, le challenge de code en ligne, aura lieu le samedi 25 janvier 2013 à 18h.
L'événement accueillera des développeurs du monde entier pour leur permettre de passer un bon moment, défier leurs pairs, gagner des prix ou entrer en contact avec des sociétés qui leur plaisent et qui recrutent.
Parmi les nouveautés sur la plate-forme :
- Python 3 sera enfin disponible !
- Le thème de cette édition est "Mission to Mars", avec un nouveau type d'exercice qui sort des sentiers battus