<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OCaml de pied en cap &#187; Actualités</title>
	<atom:link href="https://blog.developpez.com/ocamlblog/pcategory/actualites/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/ocamlblog</link>
	<description></description>
	<lastBuildDate>Fri, 22 Mar 2013 03:12:26 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Journées Méditerranéennes du Logiciel Libre (JM2L 2010)</title>
		<link>https://blog.developpez.com/ocamlblog/p9537/actualites/journees_mediterraneennes_du_logiciel_li_2010</link>
		<comments>https://blog.developpez.com/ocamlblog/p9537/actualites/journees_mediterraneennes_du_logiciel_li_2010#comments</comments>
		<pubDate>Sun, 28 Nov 2010 19:36:10 +0000</pubDate>
		<dc:creator><![CDATA[Cacophrene]]></dc:creator>
				<category><![CDATA[Actualités]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour, J’ai eu l’occasion d’assister ce week-end à trois conférences données dans le cadre des Journées Méditerranéennes du Logiciel Libre (JM2L). Comme il est connu qu’on ne râle jamais mieux qu’en français, cette partie ne sera pas écrite dans la langue de Shakespeare. Création d’un logiciel libre, Thibault Duponchelle Robots mobiles et autonomes contrôlés avec Pharo, Noury Bouraqadi Autour de SSL/TSL, Philippe Lhardy Je tiens d’emblée à dire que l’avis formulé ici n’engage que moi. [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Bonjour,</p>
<p><center></p>
<table>
<tr>
<td><a href="http://jm2l.linux-azur.org/" target="_blank"><img src="http://jm2l.linux-azur.org/sites/jm2l.linux-azur.org/files/image/2010/affiche2010.png" height="250"/></a></td>
</tr>
</table>
<p></center></p>
<p>J’ai eu l’occasion d’assister ce week-end à trois conférences données dans le cadre des Journées Méditerranéennes du Logiciel Libre (JM2L). Comme il est connu qu’on ne râle jamais mieux qu’en français, cette partie ne sera pas écrite dans la langue de Shakespeare.</p>
<ul>
<li><em>Création d’un logiciel libre</em>, Thibault Duponchelle</li>
<li><em>Robots mobiles et autonomes contrôlés avec Pharo</em>, Noury Bouraqadi</li>
<li><em>Autour de SSL/TSL</em>, Philippe Lhardy</li>
</ul>
<p>	Je tiens d’emblée à dire que l’avis formulé ici n’engage que moi. Le ton adopté est volontairement critique, sans doute un peu exagérateur, mais c’est à dessein : on apprend en tombant.</p>
<p><span id="more-21"></span></p>
<h3>Création d’un logiciel libre</h3>
<p>	Cette première conférence avait pour objectif de présenter dans leurs grandes lignes les recettes qui permettent de concevoir efficacement un logiciel libre. Le conférencier a donc rappelé les conseils donnés aux programmeurs (documentez-vous, posez des questions, entraînez-vous, etc.) et mis l’accent sur le grand nombre d’outils accessibles pour faciliter le travail (débogueurs, générateurs de documentation, logiciels de gestion de versions, forges, etc.). Je regrette que la seule application évoquée lors de la conférence (un émulateur de calculatrices) ait un point de départ juridiquement contestable et ne présente qu’un intérêt très limité. Franchement, si j’accepte de payer 200€ une calculatrice aux airs de petit ordinateur, est-ce vraiment pour y installer Tétris ou DragonBall ? S’il y avait un exemple de logiciel libre à ne pas présenter, c’était justement celui-là.</p>
<h3>Robots mobiles et autonomes contrôlés avec Pharo</h3>
<p>	Cette seconde conférence a été donnée par un enseignant-chercheur de l’école des Mines de Douai. Il y était question de robotique et d’un fork du langage Smalltalk appelé <a href="http://pharo-project.org/home">Pharo</a>. C’est un langage à objets et à typage dynamique, assez éloigné de ma culture informatique. Les possibilités ont l’air intéressantes, mais la conférence laisse un goût amer : les nombreuses démonstrations (une dizaine) manquaient de vigueur et donnaient l’impression qu’on travaille avec Pharo par ajouts de rustines successives sans jamais penser le programme dans sa globalité. Dommage, le potentiel était là.</p>
<h3>Autour de SSL/TSL</h3>
<p>	Sans doute la conférence que j’ai le plus apprécié. La sécurité informatique est aussi un domaine que je connais peu. Le conférencier a fait preuve de pédagogie avec des exemples variés et des schémas soignés. Au fil des diapos, on se demande quand même ce qu’Alice avait de si important à dire à Bob.</p>
<h3>Conclusion</h3>
<p>	Il serait peut-être intéressant de proposer, pour la session 2011, un atelier d’initiation à la programmation fonctionnelle à travers le langage OCaml. Cela permettrait de sortir des sentiers battus et de montrer que le typage statique fort est aussi capable de produire des outils puissants. Le problème avec les idées, c’est qu’on les lance sans réfléchir, et il n’y a presque jamais personne pour les rattraper avant qu’elles ne se brisent. <img src="https://blog.developpez.com/ocamlblog/wp-includes/images/smilies/icon_smile.gif" alt=":-)" class="wp-smiley" /></p>
<p>Cordialement,<br />
Cacophrène</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Plus d&#8217;encre.</title>
		<link>https://blog.developpez.com/ocamlblog/p8797/actualites/plus_d_encre</link>
		<comments>https://blog.developpez.com/ocamlblog/p8797/actualites/plus_d_encre#comments</comments>
		<pubDate>Tue, 06 Apr 2010 19:18:11 +0000</pubDate>
		<dc:creator><![CDATA[Cacophrene]]></dc:creator>
				<category><![CDATA[Actualités]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Amateurs de dromadaires, férus d&#8217;informatique, caméliens, lecteurs en tout genre, bonsoir ! Le temps me manque plus cruellement que jamais pour alimenter ce blog. Pourtant, ce ne sont pas les sujets qui manquent. L&#8217;actualité, à elle seule, apporte matière à des dizaines de billets. Un billet, par exemple, pourrait évoquer le décès récent de Robin Milner et retracer son brillant parcours d&#8217;inventeur du langage ML et coauteur de l&#8217;algorithme d&#8217;inférence qui porte désormais son nom, [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><strong>Amateurs de dromadaires, férus d&rsquo;informatique, caméliens, lecteurs en tout genre, bonsoir !</strong></p>
<p>Le temps me manque plus cruellement que jamais pour alimenter ce blog. Pourtant, ce ne sont pas les sujets qui manquent. L&rsquo;actualité, à elle seule, apporte matière à des dizaines de billets. </p>
<p>Un billet, par exemple, pourrait évoquer le décès récent de <a href="http://fr.wikipedia.org/wiki/Robin_Milner" target="_blank">Robin Milner</a> et retracer son brillant parcours d&rsquo;inventeur du langage ML et coauteur de l&rsquo;algorithme d&rsquo;inférence qui porte désormais son nom, l&rsquo;algorithme de Hindley-Milner.</p>
<p>Les temps actuels sont aussi enrichissants en dehors du monde informatique. Les débats de société récents sur les changements climatiques et les biotechnologies soulèvent des questions scientifiques et philosophiques qui mériteraient de longs développements. Hélas, je n&rsquo;ai plus le temps pour ça.</p>
<p>Peut-être le blog réouvrera-t-il ses portes un jour&#8230; mais pour l&rsquo;heure, rideau ! J&rsquo;adresse mes sincères remerciements à tous les lecteurs qui ont suivi ces billets avec intérêt.</p>
<p>Bien cordialement,<br />
Cacophrène</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dernières nouvelles du chameau</title>
		<link>https://blog.developpez.com/ocamlblog/p8309/informatique/dernieres_nouvelles_du_chameau</link>
		<comments>https://blog.developpez.com/ocamlblog/p8309/informatique/dernieres_nouvelles_du_chameau#comments</comments>
		<pubDate>Wed, 11 Nov 2009 15:40:30 +0000</pubDate>
		<dc:creator><![CDATA[Cacophrene]]></dc:creator>
				<category><![CDATA[Actualités]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[OCaml]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour ! Voici, en avant-première, quelques-uns des changements attendus pour la prochaine version majeure d&#8217;OCaml, à savoir la 3.12. Qu&#8217;on se le dise : s&#8217;il y a matière à écrire un billet, c&#8217;est que les changements ne sont pas mineurs ! La dernière version majeure publiée (version 3.11) apportait surtout de nouveaux outils (dynlink accessible en natif et refonte conjointe de camlp4, ocamlbuild). La prochaine version promet quant à elle au moins un changement conceptuel [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Bonjour !</p>
<p><center><a href="http://caml.inria.fr/" target="_blank"><img src="http://caml.inria.fr//pub/logos/caml-inria-fr.128x58.gif"/></a></center></p>
<p>Voici, en avant-première, quelques-uns des changements attendus pour la prochaine version majeure d&rsquo;OCaml, à savoir la 3.12. Qu&rsquo;on se le dise : s&rsquo;il y a matière à écrire un billet, c&rsquo;est que les changements ne sont pas mineurs !</p>
<p><span id="more-4"></span></p>
<p>La dernière version majeure publiée (version 3.11) apportait surtout de nouveaux outils (dynlink accessible en natif et refonte conjointe de camlp4, ocamlbuild). La prochaine version promet quant à elle au moins un changement conceptuel assez remarquable. Lequel ? Bah, je fais commencer par parler d&rsquo;autre chose pour garder le suspense&#8230;</p>
<p><strong>Une dose de sucre syntaxique</strong></p>
<p>Comme chaque version, OCaml 3.12 apportera sa dose de <em>sucre syntaxique</em>. Deux ajouts ont retenu mon attention. Le premier concerne l&rsquo;<em>ouverture locale des modules</em>, qui était déjà disponible sous forme d&rsquo;extension camlp4 :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">let _ = <br />
&nbsp; let open String in <br />
&nbsp; concat (make 1 ' ') [&quot;foo&quot;; &quot;bar&quot;]</div></div>
<p>On pourra aussi utiliser la syntaxe alternative :</p>
<p><code class="codecolorer text default"><span class="text">let _ = String.(concat (make 1 ' ') [&quot;foo&quot;; &quot;bar&quot;])</span></code></p>
<p>Le second ajout concerne le type record, et vise surtout à <em>alléger les notations</em> à la création et lors du filtrage :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">type t = {foo : int; bar : int; foobar : int; barfoo : int} <br />
&nbsp;<br />
let make foo bar foobar barfoo = { foo; bar; foobar; barfoo } &nbsp;<br />
let get_foo { foo = n; _ } = n</div></div>
<p>Ces deux changements mineurs devraient apporter plus de souplesse. Ils s&rsquo;inscrivent dans la continuité d&rsquo;allègements déjà réalisés auparavant. Je pense à la version 3.08, qui a introduit une fonctionnalité peu utilisée : la possibilité de ne préciser le nom du module que dans un champ du record :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">module Foo = <br />
&nbsp; struct <br />
&nbsp; &nbsp; &nbsp; type t = {foo : int; bar : int; foobar : int; barfoo : int} <br />
&nbsp; end <br />
&nbsp;<br />
let create x y z t = { Foo.foo = x; bar = y; foobar = z; barfoo = t }</div></div>
<p>Bon, c&rsquo;est bien gentil tout ça, mais ça n&rsquo;est pas non plus une révolution, et il n&rsquo;y a pas vraiment matière à en parler avant la sortie de la prochaine version majeure d&rsquo;OCaml. Nous allons donc maintenant lever le voile sur le changement conceptuel que j&rsquo;annonçais en début de billet.</p>
<p><strong>Des modules de première classe</strong></p>
<p>Voilà la raison d&rsquo;être de ce billet : la future version d&rsquo;OCaml introduira les <em>modules de première classe</em> (dans le genre de ceux de Moscow ML, sauf erreur de ma part). Pour les non-initiés qui liraient ce billet, cela signifie que les modules peuvent désormais être reçus en argument et/ou renvoyés comme résultat d&rsquo;une fonction. Voici un petit exemple pour vous donner une idée de la syntaxe qui a été retenue (attention : la fonction print ne compile pas avec la version de développement utilisée au moment de la rédaction de ce billet) :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">module type FILE = <br />
&nbsp; sig <br />
&nbsp; &nbsp; val get_name : unit -&gt; string <br />
&nbsp; &nbsp; &nbsp; val get_path : unit -&gt; string &nbsp;<br />
&nbsp; &nbsp; &nbsp; val exists : unit -&gt; bool <br />
&nbsp; &nbsp; &nbsp; val is_directory : unit -&gt; bool <br />
&nbsp; end <br />
&nbsp;<br />
let read () = <br />
&nbsp; Array.map (fun x -&gt; <br />
&nbsp; &nbsp; &nbsp; let module This = <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; struct <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let get_name () = Filename.basename x <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let get_path () = Filename.dirname x <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let exists () = Sys.file_exists x <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let is_directory () = Sys.is_directory x <br />
&nbsp; &nbsp; &nbsp; &nbsp; end <br />
&nbsp; &nbsp; &nbsp; in (module This : FILE) <br />
&nbsp; ) (Sys.readdir &quot;.&quot;) <br />
&nbsp;<br />
let print = &nbsp;<br />
&nbsp; List.iter begin fun mdl -&gt; <br />
&nbsp; &nbsp; &nbsp; let module (This : FILE) = mdl in <br />
&nbsp; &nbsp; &nbsp; Printf.printf &quot;%s: est un %s\n%!&quot; (This.get_name ()) &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (if This.is_directory () then &quot;répertoire&quot; else &quot;fichier&quot;) <br />
&nbsp; end</div></div>
<p>Au niveau des signature, on aura quelque chose de semblable à ceci :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">val read : unit -&gt; (module FILE) array <br />
val print : (module FILE) array -&gt; unit</div></div>
<p>Voilà qui ouvre de bien sympathiques perspectives&#8230;</p>
<p>D&rsquo;autres changements sont prévus, mais je ne vais pas non plus tout vous dire. Si vous êtes intéressés par tout ce que j&rsquo;ai passé sous silence, n&rsquo;hésitez pas à consulter le dépôt et la version en cours de développement !</p>
<p>À bientôt,<br />
Cacophrène</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ubuntu 9.10 est arrivé</title>
		<link>https://blog.developpez.com/ocamlblog/p8262/actualites/ubuntu_9_10_est_arrive</link>
		<comments>https://blog.developpez.com/ocamlblog/p8262/actualites/ubuntu_9_10_est_arrive#comments</comments>
		<pubDate>Sat, 31 Oct 2009 14:45:42 +0000</pubDate>
		<dc:creator><![CDATA[Cacophrene]]></dc:creator>
				<category><![CDATA[Actualités]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour ! Il y a trois manières de se justifier quand on commence à parler d&#8217;actualité informatique. Il y a d&#8217;abord la mauvaise foi : « parler de l&#8217;actualité informatique est intéressant ». Pourquoi pas&#8230; moi je connais des choses autrement plus intéressantes. On peut aussi évoquer la dictature du billet : « un blog sans billet est un blog mort ». Mais la frénésie du bloggueur est souvent inversement proportionnelle à la qualité des [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Bonjour !</p>
<p><center><a href="http://www.ubuntu-fr.org/" target="_blank"><img src="http://blog.developpez.com/media/logo-Ubuntu.png" width="187.5" height="48.9" alt="" /></a></center></p>
<p>Il y a trois manières de se justifier quand on commence à parler d&rsquo;actualité informatique. Il y a d&rsquo;abord la mauvaise foi : « parler de l&rsquo;actualité informatique est intéressant ». Pourquoi pas&#8230; moi je connais des choses autrement plus intéressantes. On peut aussi évoquer la dictature du billet : « un blog sans billet est un blog mort ». Mais la frénésie du bloggueur est souvent inversement proportionnelle à la qualité des billets. Ça ne va pas non plus ! Il reste donc la franchise. Et, pour le coup, je suis plutôt content du changement qui vient de s&rsquo;opérer.</p>
<p><span id="more-19"></span></p>
<p><strong>Ubuntu 9.10 est arrivé</strong>. Baptisé <em>Karmic Koala</em>, c&rsquo;est une version tout à la fois esthétiquement novatrice, plus rapide et plus ergonomique que les versions précédentes.</p>
<p>L&rsquo;utilisateur lambda peut accéder facilement à une vaste logithèque sans lancer le gestionnaire de paquets Synaptic (plus lent, moins convivial). D&rsquo;ailleurs, c&rsquo;est dans ce bric-à-brac que j&rsquo;ai découvert un logiciel qui m&rsquo;intéresse beaucoup, <strong>Bibus</strong>. Léger et bien intégré au bureau GNOME, il permet de chercher des références bibliographiques (notamment sur PubMed) et les exporte au format BibTeX. Chouette !</p>
<p>Quoi de neuf chez les utilitaires ? L&rsquo;outil de nettoyage du système est plus soigné et fonctionne mieux qu&rsquo;avant. On peut consulter les partitions et l&rsquo;occupation des disques avec <strong>Palimpsest</strong>. Bref, Ubuntu 9.10 apporte quelques nouveautés intéressantes dans le panneau de configuration.</p>
<p><img src="http://blog.developpez.com/media/Capture.jpg" width="790" height="480" alt="Ubuntu 9.10 - Karmic Koala" /></p>
<p>Côté esthétique, la distribution fait peau neuve. On y trouve de nouvelles icônes qui ne sont pas sans rappeler le style d&rsquo;une pomme célèbre. Un nouveau jeu de couleurs remplace l&rsquo;ancien thème marron clair et un éventail bien choisi de fonds d&rsquo;écran vient égayer le bureau.</p>
<p>Mais comme toujours, quand la raison cède devant l&rsquo;impatience, il y a le problème du téléchargement. Les serveurs sont mis à rude épreuve pendant quelques jours. Et la mise à jour depuis Ubuntu 9.04 demande du temps. Mais qu&rsquo;importe ! La dernière mouture de la première distro GNU/Linux par la taille de la communauté vaut vraiment le détour.</p>
<p>Qu&rsquo;on se le dise, Ubuntu 9.10 est arrivé !<br />
Ah&#8230; Windows Seven aussi. David et Goliath ?</p>
<p>Cordialement,<br />
Cacophrène</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
