C11 n'est pas encore mort

Posté par  . Édité par Bruno Michel, Benoît Sibaud, baud123, Nÿco et claudex. Modéré par Nÿco.
59
26
déc.
2011
C et C++

La dernière norme du langage C a été publiée le 8 décembre 2011, la pré-version finale étant accepté le 10 octobre, peu avant le décès du regretté Dennis Ritchie à l'origine du langage.

C11 intègre principalement la gestion du multithreading et rend optionnelles certaines fonctionnalités afin de faciliter la conformité des compilateurs vis-à-vis de la norme. La précédente norme C99 a eu beaucoup de mal à s'imposer auprès de certains éditeurs, certains refusant même de l'implémenter (notamment un vendeur d'environnement Basic, situé à Redmond).

Qt 4.8 est sorti

Posté par  . Édité par Gof, Florent Zara, _PhiX_ et Nÿco. Modéré par j. Licence CC By‑SA.
Étiquettes :
39
19
déc.
2011
C et C++

La nouvelle version de Qt (prononcer « cute » comme mignon en anglais), le framework en C++ derrière KDE et bien d'autres applications libres, est sortie. Celle-ci est la dernière version majeure de la branche 4.x et la prochaine sera la branche 5.

Merci à Gof, Nÿco, _PhiX_ et reno pour leur aide lors de la rédaction de cette dépêche.

EFL 1.1 alpha

Posté par  . Modéré par tuiu pol. Licence CC By‑SA.
Étiquettes :
40
16
nov.
2011
C et C++

Tôt ce matin, on pouvait lire l’annonce de la sortie de la version 1.1 alpha des bibliothèques Enlightenment Foundation Libraries, les EFL. Ces bibliothèques sont la base du gestionnaire de fenêtres et environnement de bureau ultra‐optimisé Enlightenment.

Enlightenment sur téléphone|Enlightenment sur laptop

Voilà quelque temps que le projet Enlightenment a commencé sa marche vers la publication de sa version stable finale, avec les EFL tout d’abord, et Enlightenment, lui‐même, pour conclure. Le voyage a été long, plus de 10 ans, mais le résultat est là. Cette version apporte un certain nombre de corrections de bogues, ainsi que de nouvelles fonctionnalités. La future version 1.1 sera la base d’Enlightenment DR17.

Dennis Ritchie, un père d’UNIX, nous a quittés

Posté par  . Modéré par Benoît Sibaud. Licence CC By‑SA.
149
13
oct.
2011
C et C++

Dennis MacAlistair Ritchie, le créateur du langage C et d’UNIX, est décédé.
Dennis Ritchie est connu comme étant le créateur du langage C, un développeur clef du système d’exploitation UNIX, et le coauteur du célèbre livre référence du langage C, The C Programming Language, communément appelé K/R ou K&R (en référence à ses deux auteurs : Kernighan et Ritchie).

Son invention du langage C et sa participation au développement d’UNIX, au côté de Ken Thompson, ont fait de lui un pionnier de l’informatique moderne. Le langage C reste au début du XXIe siècle, un des langages les plus utilisés, tant dans le développement d’applications que de systèmes d’exploitation. UNIX a aussi eu une grande influence en établissant des concepts qui sont désormais totalement incorporés dans l’informatique moderne.

Il déclara que le langage C « semblait être une bonne chose à faire » et que n’importe qui à sa place aurait fait la même chose ; bien que son collègue des laboratoires Bell, [Bjarne Stroustrup], créateur du C++, répondit que « si Dennis avait décidé de consacrer cette décennie à des mathématiques ésotériques, UNIX aurait été mort‐né. »

Suite au succès d’UNIX, Dennis continua ses recherches dans les systèmes d’exploitation et les langages de programmation, dont notamment les systèmes d’exploitation Plan 9 et Inferno, et le langage de programmation Limbo.

Il est corécipiendaire avec Ken Thompson de l’édition 2011 du Prix japonais et du Prix Turing de 1983.

Source de la biographie : Wikipédia

Sundown, Houdini et Crustache

Posté par  (site web personnel) . Modéré par Florent Zara. Licence CC By‑SA.
Étiquettes :
22
2
sept.
2011
C et C++

Vicent Martí, aka tanoku, est un des développeurs de github qui aime bien coder en C. Ce n'est donc pas très étonnant de trouver sur son compte github des bibliothèques en C pouvant servir au développement d'applications web. Je souhaite en particulier vous évoquer de trois bibliothèques sous licence ISC :

Crustache est une implémentation en C de Mustache, un moteur de templating. Des bindings pour Ruby sont également disponibles dans le dépôt git.

Houdini permet d'échapper des chaînes de caractères en UTF-8 pour le web. Et de faire l'inverse. Les trois types d'échappement sont :

  • convertir &, ", ', <, > et / en leur entité HTML correspondante (conformément à la recommandation de l'OWASP) ;
  • échappement des URI respectant la RFC ;
  • et échappement des URL (la différence avec l'échappement des URI est le remplacement des espaces par des +).

Et enfin, Sundown est un fork de libupskirt. Il permet de convertir du texte en Markdown vers du HTML. Nous utilisons Redcarpet, les bindings Ruby autour de Sundown, pour LinuxFr.org du fait de ses performances et de ses nombreuses options.

Coccigrep, un grep sémantique pour le langage C basé sur Coccinelle

Posté par  (site web personnel) . Modéré par patrick_g. Licence CC By‑SA.
45
2
sept.
2011
C et C++

Lorsque l'on travaille sur un projet C comportant un certain nombre de fichiers et de lignes de code, il arrive fréquemment que l'on se pose des questions comme "Mais où est modifié le champ data de ma structure Packet ?". grep ne suffit pas pour répondre à ce genre de questions car ne comprenant pas C, il ne sait pas, par exemple, que la variable monbopkt est une structure Packet.

coccigrep, basé sur coccinelle qui est un outil très puissant de recherche et de modification automatique de code, est un logiciel libre chargé de répondre à ce genre de questions. Il vient d'être publié en version 1.0rc1, sous licence GPL v3. Il est écrit en Python et s'interface avec les éditeurs Vim et Emacs, ce qui permet de faire les recherches depuis l'éditeur.

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.

Science et éducation : EZ-Draw 1.0 est sorti

Posté par  . Modéré par patrick_g. Licence CC By‑SA.
28
22
juin
2011
C et C++

EZ-Draw (Easy Draw) est un module en langage C qui facilite l’écriture de programmes graphiques, avec une gestion simplifiée des évènements. Il permet de créer des fenêtres, y dessiner, réagir à la souris et au clavier, faire des animations, etc..

EZ-Draw fonctionne à la fois sous X11 (Linux, Mac OS X, et autres Unix) et Windows (Seven, Vista, XP, etc.) ; en interne, il est basé respectivement sur la bibliothèque Xlib et sur l’API Win32, et il masque tous leurs aspects techniques.

PCC 1.0 est sorti… depuis le 1er avril !

Posté par  . Modéré par patrick_g.
Étiquettes :
24
16
juin
2011
C et C++

Comment cette information majeure a‐t‐elle pu échapper aux journaux de LinuxFr ? À l’avenir, il faudra garder l’œil ouvert, car le futur est aussi prometteur

Pour plus d’infos, la dépêche précédente était déjà bien complète !

Avec un compilateur C simple, portable, et sous licence compatible, les *BSD pourraient se libérer de la dépendance à GCC qui pose problème (infrastructure compliquée… comme de la licence GPLv3 ?!). Comme rappelé dans les questions aux développeurs OpenBSD, les espoirs se tournent également du côté de LLVM / Clang, qui progresse vite.

Un autre petit compilateur léger, rapide et pratique, quand on ne veut pas déployer toute l’armada GCC pour jouer sur un poste : TCC !

Plus aucune raison pour ne pas contribuer à des projets en C (sous BSD) ?!

GnuTLS ajoute le support de DTLS

Posté par  . Modéré par Xavier Teyssier. Licence CC By‑SA.
Étiquettes :
38
12
avr.
2011
C et C++

GnuTLS est une bibliothèque logicielle libre diffusée sous la licence LGPL 2.1 et plus et écrite en C et C++. GnuTLS implémente les protocoles réseau SSL 3.0, TLS 1.0, TLS 1.1 et TLS 1.2. Ceux-là même utilisés par tous les navigateurs web quand vous surfez en HTTPS.

Une version majeure est en cours de développement, elle ajoute une implémentation du protocole DTLS et améliore la compatibilité avec OpenSSL.