Journal 723, +5736, -5696… un mois de travail de résurrection d'un projet libre…

Posté par  . Licence CC By‑SA.
Étiquettes :
129
17
mar.
2021

Bonjour à tous

Le 10 février dernier, pris de nostalgie et d'ennui, je me suis lancé dans un projet un peu fou, probablement inutile et vain (donc indispensable) : faire revivre un projet auquel j'ai beaucoup contribué à une époque mais que j'ai perdu de vue ces dernières années. Le projet en question est complexe et volumineux puisqu'il s'agit de Calligra, la suite bureautique du projet KDE. Ayant été co-mainteneur de Calligra Words, je me focaliserai surtout sur ce dernier.

(…)

Les coulisses du standard C++

Posté par  (site web personnel) . Édité par Davy Defaud, Benoît Sibaud, ZeroHeure, bubar🦥, M5oul et Anthony Jaguenaud. Modéré par Pierre Jarillon. Licence CC By‑SA.
99
20
août
2016
C et C++

Le C++ a bientôt la quarantaine et pourtant très actif en ce moment avec la finalisation de la prochaine version C++17. Profitons‐en pour faire le point avec une série d’articles sur le C++. Cette première dépêche nous dévoile la face cachée du C++, et donc peut intéresser tous les lecteurs LinuxFr.org. :-)

Évolution du langage C++

Le rendu 3D, rétrospective

Posté par  (site web personnel) . Édité par Benoît Sibaud et Julien Jorge. Modéré par Pierre Jarillon. Licence CC By‑SA.
Étiquettes :
86
21
nov.
2022
C et C++

Le 13 novembre 2022 est sorti Vulkan Scene Graph 1.0.0 (VSG). C'est la première version stable de cette bibliothèque en C++ qui fournit un graphe de scène basé sur l'API graphique Vulkan. Son concepteur, Robert Osfield, avait créé et maintenu OpenSceneGraph (OSG), basé sur OpenGL. Vulkan étant devenu la référence, il était temps de mettre à jour OSG en utilisant les toutes dernières fonctionnalités du C++. Comme c'est un sujet touffu, je vous propose dans cette première dépêche de revenir sur l'histoire des graphismes 3D. Dans une deuxième dépêche, nous verrons ce qu'est un graphe de scènes, et dans une troisième, nous nous pencherons plus spécifiquement sur OpenSceneGraph et VulkanSceneGraph.

Journal Moi, expert C++, j'abandonne le C++

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
86
3
juin
2019
Ce journal a été promu en dépêche : Moi, expert C++, j’abandonne le C++.

Je profite de cette anecdote pour rédiger un long journal afin de partager mon expérience et mon apprentissage en espérant t’apprendre de nouveaux points de vue.

Peut-être cela vaut le coup d'en faire une dépêche… Dis-le moi dans les commentaires. 😉

Ma passion C++11, C++14, C++17…

Ma carrière professionnelle de développeur C a débuté en 1994 et j’ai naturellement adopté avec enthousiasme le C++ en 1999.
J’étais un développeur C++ heureux et j'avais considéré la nouvelle version du standard C++11 (…)

Journal Coroutines, histoire d'un nouvel inutilitaire…

Posté par  . Licence CC By‑SA.
Étiquettes :
80
20
oct.
2023

Salutations !

À mon travail, nous utilisons actuellement pour la plupart de nos besoins des serveurs dédiés loués à une petite PME roubaisienne (connue pour son étroite collaboration avec le SDIS). Nous devons avoir à la louche une vingtaine de serveurs chez cet hébergeur. Globalement, on peut le dire, tout va bien. Son réseau est en carton, pirouette cacahouete, ses escaliers non-ignifugés… mais on a des redondances entre centres de données, tout devrait bien se passer.
Mais il y a (…)

Le standard C++0x a enfin été voté

Posté par  . Modéré par Lucas Bonnet. Licence CC By‑SA.
Étiquettes :
76
18
août
2011
C et C++

Le nouveau standard du langage C++ a été voté ce vendredi 12 août. Initialement prévu pour 2008 ou 2009, il a pris du retard, notamment à cause de problèmes avec certaines fonctionnalités. Malgré cette date, beaucoup l'appellent quand même C++0x et il suffit de le nommer C++0xB pour que le nom soit conservé. La publication officielle ne devrait cependant pas arriver avant quelques mois.

Heureusement pour les utilisateurs, ces fonctionnalités ont déjà commencé à être implémentées dans les différents compilateurs et bibliothèques standard. Ceci devrait permettre de ne pas attendre trop longtemps avant de pouvoir profiter de ces nouveautés, voire d'en profiter dès à présent pour certaines. Par exemple, sous GCC, il faut passer l'option -std=c++0x au compilateur pour utiliser des évolutions qui sont déjà implémentées.

Une sélection des principales nouveautés est présentée en seconde partie de dépêche.

Merci à moules< pour son aide lors de la rédaction de cette dépêche.

Journal Recherche de valeur dans un tableau et l'écosystème des compilateurs C++

Posté par  (site web personnel) . Licence CC By‑SA.
72
3
oct.
2021

Bonjour 'nal,

GCC, Clang, MSVC, sont tous des compilateurs très performants, ayant de nombreuses heuristiques pour émettre des instructions terriblement efficaces, à défaut d'être optimales. De même pour ICC, le compilateur d'Intel, réputé pour enterrer tous les autres en termes de performance du code généré. On en parle pas beaucoup mais il est là. (Tiens, d'ailleurs, savais-tu qu'Intel migrait son compilateur vers LLVM ? Le nouveau compilateur se nomme ICX pour le C, et ICPX pour le C++.)

Il (…)

[code] Trouver les erreurs

Posté par  (site web personnel) . Édité par BAud, Snark, Benoît Sibaud, palm123, RoPP, M5oul, rootix, TBTB, Nicolas Boulay et ZeroHeure. Modéré par rootix. Licence CC By‑SA.
70
14
jan.
2015
Technologie

Le récent problème d'OpenSSL et de ses failles peut nous avoir rendu dubitatifs quant à la supposée meilleure qualité des logiciels libres.

Cette dépêche se veut un petit rappel sur ce qui impacte la qualité d'un programme informatique, et de ce que l'on peut en déduire pour la communauté libre, et open source.

Journal Google forke C++

Posté par  (Mastodon) . Licence CC By‑SA.
Étiquettes :
66
21
juil.
2022

Bon, allez, après ce titre totalement faux mais qui permet d'attirer le chalant, reprenons l'historique et voyons ce qu'il en est vraiment.

Google utilise C++ en interne pour obtenir le maximum de performance de ses algorithmes et donc pour maximiser ses profits. Donc, toute amélioration de performance dans C++ est un gain en argent pour Google.

Or, Google a été mis en échec dans sa tentative pour mettre en priorité de C++ la performance, au profit de la stabilité de (…)

C++17, Genèse d’une version mineure

Posté par  (site web personnel) . Édité par Benoît Sibaud, Davy Defaud, cracky, palm123, Lucas, Adrien Dorsaz, M5oul, ZeroHeure, Storm, RyDroid et Martin Peres. Modéré par bubar🦥. Licence CC By‑SA.
Étiquettes :
61
2
oct.
2016
C et C++

La série de dépêches C++ continue. Cette seconde dépêche nous amène dans les réunions du comité de standardisation en vue de publier la prochaine version C++17 et nous permettra de vérifier ce titre provocateur (comment ça mineure ?). Cette dépêche peut intéresser tous les lecteurs de LinuxFr.org, pas seulement les développeurs. Les prochaines dépêches seront plus techniques.

Deux collègues discutent : « C++ est enfin sorti », « Trop top », « Va falloir se palucher les 1700 pages du nouveau standard », « Gloups ». Une note repositionnable sur le dessin indique : « Il y en a qui ne connaissent pas encore LinuxFr.org »

C++17 fixe l’ordre d’évaluation des expressions

Posté par  . Édité par Oliver, Davy Defaud, Benoît Sibaud et palm123. Modéré par claudex. Licence CC By‑SA.
Étiquettes :
56
1
déc.
2016
C et C++

Le C++ est un langage bien présent et depuis longtemps dans les logiciels libres (environnements de bureau, outils bureautiques, navigateurs Web…). L’an 2017 approche à grands pas avec la promesse d’un tout nouveau C++17.

Pour finir l’année, voici le calendrier de l’Avent du C++ avec des dépêches pédagogiques sur ce qui nous attend en 2017. Après deux dépêches de mise‐en‐bouche, nous entrons enfin dans le vif du sujet avec deux spécifications techniques concernant l’ordre d’évaluation des expressions. Allez, c’est parti !   ᕕ(ᐛ)ᕗ

Bjarne propose de changer le C++ pour corriger son livre qu'il tient dans ses mains

Moi, expert C++, j’abandonne le C++

Posté par  (site web personnel) . Édité par Ysabeau 🧶 🧦, Davy Defaud, ZeroHeure, palm123, Pierre Jarillon, Nicolas Casanova et Benoît Sibaud. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
54
6
juin
2019
C et C++

Ma carrière professionnelle de développeur C a débuté en 1994 et j’ai naturellement adopté avec enthousiasme le C++ en 1999. J’étais un développeur C++ heureux et j’avais considéré la nouvelle version du standard C++11 juste comme une évolution tant attendue. En 2015, je réalise enfin à quel point, il a révolutionné l’écosystème C++ et ses bouleversements dans l’état d’esprit de la communauté. Je me passionne alors pour C++11, C++14, puis C++17, je m’implique beaucoup, je deviens un référent pour mes collègues, je donne des conférences sur ce langage, j’organise des meet‐ups à Paris, je publie de nombreux articles C++ sur LinuxFr.org

En 2018, une expérience change radicalement ma façon d’appréhender le développement logiciel.

Journal Pythran, en plein délire

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
50
23
mai
2018

Cher journal, je dois te confesser que j'ai déclenché quelque chose dont j'ai un peu honte.

Tu te souviens bien sûr de Pythran, ce compilateur pour noyau scientifiques écrit en Python, et de ce petit détail d'implémentation qui veut que le compilateur commence par transformer les fonctions Python en fonctions C++ template (a.k.a. transformer du code Python en meta-programme C++ pour faire stylé voire pédant).

Un choix de design a été de faire en sorte que ces fonctions ne (…)

Journal C++17 est sur les rails

Posté par  (Mastodon) . Licence CC By‑SA.
Étiquettes :
50
12
mar.
2016

À la dernière réunion du comité de normalisation de C++ qui a eu lieu à Jacksonville (Floride), les fonctionnalités de C++17 ont été plus ou moins gelées. On sait désormais ce qu'il y aura dedans mais aussi ce qu'il n'aura pas dedans. Et ça crée pas mal de remous.

Dans les nouveautés attendues :

Journal [C++14 ] Expressions template pour les nuls

45
31
mai
2016

Expression Templates pour les nuls

Après un contact prolongé avec Joël Falcou, et pas mal de nœuds aux cerveaux pour arriver à émuler le comportement du broadcasting de Numpy avec des expression templates dans Pythran, j'ai eu l'envie soudaine, un peu folle peut-être, de réécrire un moteur d'expressions template en C++14, mais pour faire simple et didactique.

Mais de quoi zy parle

Les expressions templates sont une maintenant assez vieille technique de C++ qui permet par exemple d'éviter de (…)