Sortie de Coq 8.5 bêta, un assistant de preuve formelle

98
28
jan.
2015
Science

L'assistant de preuve Coq, deux fois primé l'année dernière, vient de sortir en version 8.5 bêta. Attendue depuis plus d'un an déjà, on trouvera au menu de cette version un nombre certain de changements en profondeur.

Coq est un assistant de preuve sous licence LGPL 2.1, développé entre autres à l'INRIA. Issu des travaux sur la correspondance de Curry-Howard, Coq peut être vu aussi bien comme un langage de programmation que comme un système de preuves mathématiques. Il est, de fait, employé par les deux communautés. Parmi les développements en Coq, on peut citer par exemple le compilateur C certifié CompCert sur le versant informatique et la preuve du Théorème de Feit et Thompson sur le versant mathématique. Plus récemment, une des failles d'OpenSSL a été découverte grâce à Coq[0] . Il est aussi de plus en plus utilisé comme système interactif pour l'apprentissage de la logique dans l'enseignement supérieur.

On rappellera dans le reste de la dépêche les grands principes qui sous-tendent Coq, ce qu'il est, ce qu'il n'est pas, puis on détaillera les changements introduits dans cette version.

Journal L'AFNOR a besoin de vous

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
21
10
nov.
2014

Bon, je sais, ce n'est pas directement lié au libre mais quand même.

Le groupe Ada de l'AFNOR, qui a en charge de participer à la commission de normalisation du langage, est en passe de disparaître par manque de participants aux deux réunions annuelles.
La disparition du groupe entraînerait l'absence des utilisateurs français dans la commission de normalisation.

Sans vouloir faire de chauvinisme, avouons que ce serait dommage pour un langage autrefois défini par un groupe français :)
Et (…)

Journal Python comme premier langage de programmation ?

30
22
juil.
2014

Un récent article recensait quel langage est étudié en premier dans le cursus universitaire aux Etat-unis. Il en ressort que Python est le langage le plus utilisé, devant Java, Matlab et C/C++. Ce n'est pas vraiment une surprise, au vu de la popularité du langage et de sa relative simplicité d'apprentissage.

Si je devais apprendre à programmer aujourd'hui je pense que je choisirais Scala, parce qu'il élégant, statiquement typé et combine les notions de programmation fonctionnelle et orientée-objet. Et vous (…)

Rust s’oxyde en version 0.10

Posté par  . Édité par olivierweb, BAud, sebcrozet, Fabien, Leo, Bruno Michel, Nÿco, jcr83, reno, stiffux, Ontologia et bubar🦥. Modéré par patrick_g. Licence CC By‑SA.
63
8
avr.
2014
Rust

Mozilla et la communauté Rust ont annoncé la version 0.10 de Rust le 3 avril. Rust est un langage de programmation développé par Mozilla. La version 0.1 a été annoncée par Mozilla le 20 janvier 2012. Pour découvrir le langage, on peut se référer au nouveau site web sur lequel on peut lire :

Rust est un langage de programmation système qui est extrêmement rapide, empêche presque tous les plantages et élimine les accès concurrent.

Logo de Rust

Rust se veut donc une alternative à C/C++, comme D et Go, et possède tout comme ces derniers un ramasse-miettes, mais qui est optionnel. Sa syntaxe est proche de celle du C/C++/Java tout en étant beaucoup plus expressif. Sa force est de mélanger les fonctionnalités de différents paradigmes, beaucoup venant du fonctionnel (immuabilité par défaut, modèle objet proche de celui d'Haskell, fermetures, etc). Il met l'accent sur la sûreté d'exécution, notamment grâce à son système élaboré de pointeurs intelligents et son système de types forts, sans sacrifier les performances.

Depuis la version 0.9, qui a fait l’objet d’une dépêche, les efforts ont notamment porté au cours des 1500 changements sur la simplification du langage. Le langage Rust n'est pas stabilisé, cela viendra avec la version 1.0.

Cette itération de développement a apporté le découpage de la bibliothèque libextra, introduit des extensions de syntaxe inter crate, amélioré la manipulation des pointeurs avec le trait Deref et la gestion des erreurs des entrées/sorties.
En dehors du compilateur, cette nouvelle version a vu l'introduction d'un nouveau processus de RFC ainsi que la construction quotidienne des installateurs binaires.

Des améliorations ont été données à l'infrastructure de tests et aux scripts de construction. Des installeurs sont désormais disponibles pour Linux, MacOS et Windows. Même si certains font tourner Rust sur ARM, ce n'est pas une architecture proposée dans la documentation.

Comme pour les précédentes versions, cette version 0.10 doit être considérée comme une version alpha, appropriée pour les adopteurs précoces et les amateurs de langages.

Inflectiones, déclinaisons et conjugaisons en grec ancien

Posté par  (site web personnel) . Édité par Benoît Sibaud et tuiu pol. Modéré par ZeroHeure. Licence CC By‑SA.
26
13
fév.
2014
Python

En bref : inflectiones est une bibliothèque (Python3, GPLv3) qui permet de conjuguer et de décliner des mots. Le travail inverse (analyser un mot pour en dégager les caractéristiques morphologiques) ne m'intéressant pas, n'a pas été codé. Enfin, seuls quelques exemples tirés du grec ancien et de l'esperanto sont disponibles, voyez les exemples ci-dessous. Le projet n'en est qu'à ses débuts et attend du renfort !

Journal Normalisation du langage Dart de Google par l'Ecma

Posté par  (site web personnel) . Licence CC By‑SA.
48
23
déc.
2013

Le langage Dart de Google va être normalisé par l'ECMA au sein du commité TC52. L'annonce a eu lieu le 12 décembre 2013.

Dart a été présenté la première fois en octobre 2011. La version 1.0 est sortie le 13 novembre 2013.
Dart est multiplateforme et disponible sous licence BSD et sa syntaxe est très proche de celle de Java et C#.

1. Objectif

Le but de Dart à long terme est de remplacer JavaScript, jugé impropre (…)

Journal Une nouvelle cible pour Dart

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
15
14
nov.
2013

La version 1.0 de Dart SDK vient d'être publiée. Ce langage de programmation a pour but de remplacer Javascript à long terme: plus structuré, plus sûr, plus performant… Les promesses habituelles des nouveaux produits sont là.

Dart propose une approche plus radicale que les solutions concurrentes (Haxe, Typescript, asm.js…): remplacer l'interpréteur javascript. Sur le site il est ainsi possible de télécharger une version patché de Chromium qui embarque un interpréteur Dart. Pour être compatible avec les autres navigateurs, il est (…)

Journal Valisp, un langage (pseudo-)Lisp au-dessus de Vala

Posté par  (site web personnel) . Licence CC By‑SA.
48
15
oct.
2013

Cher journal, je me permets de te présenter un projet personnel à l'intérêt assez limité : le langage jouet Valisp, qui a pour objectif d'ajouter une couche « Lispienne » au langage Vala.

Mais pourquoi ?

Parce que ! Vala tout seul, ce n'est pas assez rigolo : c'est juste un langage (Vala) qu'il faut compiler dans un autre langage (C) qu'il faut ensuite compiler à nouveau, ce qui est beaucoup trop direct, admettons-le.

Valisp est donc un langage qu'il faut compiler dans (…)

Les journaux LinuxFr.org les mieux notés du mois d'août 2013

Posté par  (site web personnel) . Édité par bubar🦥. Modéré par Nÿco. Licence CC By‑SA.
12
2
sept.
2013
LinuxFr.org

LinuxFr.org propose des dépêches et articles, soumis par tout un chacun, puis revus et corrigés par l'équipe de modération avant publication. C'est la partie la plus visible de LinuxFr.org, ce sont les dépêches qui sont le plus lues et suivies, sur le site, via Atom/RSS, ou bien via partage par messagerie instantanée, par courriel, ou encore via médias sociaux.

Ce que l’on sait moins, c’est que LinuxFr.org vous propose également à tous de tenir vos propres articles directement publiables, sans validation a priori des modérateurs. Ceux-ci s'appellent des journaux. Voici un florilège d'une dizaine de ces journaux parmi les mieux notés par les utilisateurs… qui notent. Lumière sur ceux du mois d'août passé.

Journal Retour d'expérience avec le langage J

36
23
août
2013

Bonjour Nal,

je vais te parler d'un langage que je me suis mis à apprendre ce mois d'août. Son nom c'est J tout court. Il s'agit d'un langage spécialisé dans la manipulation de tableaux multidimensionnels à l'aide d'une notation très compacte, descendant d'APL. Il n'y a qu'une seule implémentation, dont la version 701 a été libérée sous GPLv3 en 2011, mais des licences commerciales sont aussi possibles. Il s'agit d'un langage interprété, pensé pour une utilisation intéractive exploratrice (…)

Forum Programmation.autre Quel langage de programmation pour développer des jeux amateurs ?

Posté par  (site web personnel) . Licence CC By‑SA.
5
22
fév.
2013

Salut, depuis quelques semaines je n'arrête pas de réfléchir sur quel langage de programmation serait idéal pour développer des jeux sur Linux et exclusivement sur Linux. Je me moque de la portabilité, ma principale motivation c'est de sortir des jeux pour Linux. La logique voudrait que je continue de programmer des jeux avec MonoDevelop et MonoGame mais je ne sais pas si c'est une bonne chose puisque le tout repose sur une technologie Microsoft breveté. C'est dommage, car j'aime le (…)

Sortie de Tcl/Tk 8.6

Posté par  . Édité par tuiu pol, Nÿco et Lucas Bonnet. Modéré par claudex. Licence CC By‑SA.
Étiquettes :
36
27
déc.
2012
Technologie

Le Tcl Core Team est heureux d'annoncer la sortie de la version 8.6 du langage de script Tcl et de la bibliothèque d'interface graphique Tk. C'est la première version stable de la branche Tcl/Tk 8.6 dont le développement a commencé en mars 2008.

Parmi les nouveautés pour Tcl, le support officiel de la programmation orientée objets dans le noyau, l'évaluation stackless, les coroutines, une interface commune d'accès aux bases de données SQL dans le noyau, la gestion des exceptions, les canaux virtuels, le support de la compression zlib dans le noyau.

Parmi les nouveautés pour Tk, le support du format PNG, un nouveau sélecteur de fonte, le déplacement absolu des objets dans le widget canvas et les textes obliques.

À noter un changement d’infrastructure : le développement de Tcl/Tk n'est plus hébergé sur Sourceforge avec CVS mais sur un site spécifique avec le gestionnaire Fossil développé par D. Richard Hipp (le créateur de SQLite). Il en est de même pour les deux bibliothèques standards (Tcllib et Tklib).

Journal REBOL libéré

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
24
24
déc.
2012

Qui se souvient du langage de programmation REBOL ? Pour ma part j'y avais juste jeté un coup d’œil, il y a longtemps, mais alors longtemps ! D'ailleurs, entrez le mot clé "rebol" dans le masque de saisie de recherche de ce présent site et le dernier signe de vie de ce langage remonte à une dizaine d'années.

Or, utilisateur (béatement satisfait) de la distro Gentoo, j'ai vu le mot "rebol" dans la liste des nouveaux packages du site Gento ! Diantre, (…)

Publication de la nouvelle norme Ada 2012

42
17
déc.
2012
Ada

Après plusieurs années passées à parlementer, la nouvelle norme Ada 2012 vient enfin d'être publiée par l'ISO sous le numéro ISO/IEC 8652:2012. Il s'agit donc de la quatrième révision du langage ajoutant ainsi différentes fonctionnalités par rapport à la version 2005.

N. D. M. : GNAT est le compilateur Ada du projet GNU, faisant partie de GNU Compiler Collection (GCC). Toujours en logiciel libre, on peut citer MaRTE OS un système d'exploitation libre temps-réel en Ada.