The Coder's Breakfast - Autres langages2022-11-22T14:44:11+01:00Olivier Croisierurn:md5:7bccc57fa40daaa0bbb47c16f3d66529DotclearCoding challenge !urn:md5:7b60251e02f02e5d3302654a59e1264a2013-02-14T12:27:00+01:002013-02-14T15:09:00+01:00Olivier CroisierAutres langageshaskell<p>Je suis tombé hier sur un vieux challenge proposé par Cédric Beust sur son blog : <br />
<a href="http://beust.com/weblog/2008/06/27/">http://beust.com/weblog/2008/06/27/</a></p>
<p>Comme je suis en train d'apprendre Haskell, et que ce genre de challenge algorithmique semble particulièrement bien adapté à ce langage, je vous livre ici ma solution.</p>
<p>Quelle serait la vôtre ? Tous les langages sont acceptés. <br />
(Si le code est trop long pour tenir dans un commentaire, ou si ce n'est pas pratique pour des raisons de formatage, postez-le sous la forme d'un Gist par exemple)</p> <p>import Data.List
-- Check for repeating digits by transforming to a string,
-- then comparing to the same string without duplicate chars
nonRepeating x = (show x) == (nub $ show x)
-- Get non-repeating nums in the [1..n] range
nrNums n = filter nonRepeating [1..n]
-- Count the non-repeating nums
nbNRNums = length . nrNums
-- Calculate gaps... <a href="http://thecodersbreakfast.net/index.php?post/2013/02/14/Coding-challenge"><em>Lire</em> Coding challenge !</a></p>http://thecodersbreakfast.net/index.php?post/2013/02/14/Coding-challenge#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/331Petit guide de programmation illustréeurn:md5:cf630b9f22f3edfaca9aa9d326093b502011-12-21T23:37:00+01:002011-12-21T23:44:46+01:00Olivier CroisierAutres langageshaskelllispruby <p>Ce très court billet pour vous signaler l'existence de quelques sites de programmation à la fois très sérieux et fort sympathiquement illustrés.
Haskell
Un sur Haskell d'abord, mon langage du moment. Richement illustré sous Paint, on admirera la précision du tracé et l'harmonie des couleurs.
Learn you a Haskell for great good :... <a href="http://thecodersbreakfast.net/index.php?post/2011/12/21/Petit-guide-de-programmation-illustr%C3%A9e"><em>Lire</em> Petit guide de programmation illustrée</a></p>http://thecodersbreakfast.net/index.php?post/2011/12/21/Petit-guide-de-programmation-illustr%C3%A9e#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/308MkTree : créez facilement une hiérarchie de répertoiresurn:md5:2e9af6054352b6506780454c46c118312009-03-06T20:45:00+01:002011-02-20T17:41:40+01:00Olivier CroisierAutres langageslinux<p>Je vous livre (en <a href="http://thecodersbreakfast.net/public/170/mktree.zip">pièce jointe</a> de ce billet) un petit script shell que j'ai développé suite à un besoin récurrent : créer une hiérarchie de répertoires.<br />
Le besoin typique est de créer une structure de projet Java (à la Maven), mais le script peut naturellement se révéler utile dans nombre de situations.</p> <p>Le script prend en entrée une structure arborescente formatée comme ceci :
un répertoire par ligne
le nombre de tabulations en début de ligne détermine la profondeur du répertoire dans l'arborescence
En clair : vous dessinez l'arborescence souhaitée à l'aide de tabulations, et le script la reproduit pour vous. Magique !
Exemple :
src
main... <a href="http://thecodersbreakfast.net/index.php?post/2009/03/06/MkTree-%3A-cr%C3%A9ez-facilement-une-hi%C3%A9rarchie-de-r%C3%A9pertoires"><em>Lire</em> MkTree : créez facilement une hiérarchie de répertoires</a></p>http://thecodersbreakfast.net/index.php?post/2009/03/06/MkTree-%3A-cr%C3%A9ez-facilement-une-hi%C3%A9rarchie-de-r%C3%A9pertoires#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/165Perl : rétrospective et futur par Larry Wallurn:md5:7c783c8156c097046c306bc69a3fb8fe2008-12-15T23:33:00+01:002008-12-15T23:34:11+01:00Olivier CroisierAutres langagesperl <p>Dans une interview accordée à ComputerWorld, Larry Wall partage ses réflexions sur Perl, dont il est l'inventeur. Outre les origines du langage, nous y apprenons quelques anecdotes intéressantes ou surprenantes : par exemple, Perl a été utilisé pour écrire le pilote d'accès au système de fichiers de Clearcase (tiens donc, ça explique bien des... <a href="http://thecodersbreakfast.net/index.php?post/2008/12/15/Perl-%3A-r%C3%A9trospective-et-futur-par-Larry-Wall"><em>Lire</em> Perl : rétrospective et futur par Larry Wall</a></p>http://thecodersbreakfast.net/index.php?post/2008/12/15/Perl-%3A-r%C3%A9trospective-et-futur-par-Larry-Wall#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/116Python 3.0 enfin disponibleurn:md5:b1c8188ea592ad0345089d973c914a092008-12-05T21:29:00+01:002008-12-07T22:08:06+01:00Olivier CroisierAutres langagespython <p>Au début de l'année, je vous avais déjà parlé de Python 3.0, qui s'annonçait comme une version de rupture, un nouveau départ permettant de faire un peu de ménage dans le langage tout en ajoutant de nouvelles fonctionnalités.
Bonne nouvelle, Python 3.0 est maintenant officiellement disponible en version finale !
Je vous laisse lire la... <a href="http://thecodersbreakfast.net/index.php?post/2008/12/07/Python-3.0-enfin-disponible"><em>Lire</em> Python 3.0 enfin disponible</a></p>http://thecodersbreakfast.net/index.php?post/2008/12/07/Python-3.0-enfin-disponible#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/113PHP : Fin du support de PHP4urn:md5:f05f396a723f0b0828393e8b7eb5c1612008-08-09T21:59:08+00:002008-08-11T22:04:28+00:00Olivier CroisierAutres langagesphp <p>Après huit ans de bons et loyaux services, PHP4 prend sa retraite.
Sorti le 22 mai 2000, il a apporté en son temps de nombreuses nouveautés et une sécurité améliorée.
Son support officiel est désormais arrêté.
Les derniers irréductibles qui n'auraient pas encore migré sur PHP5 sont donc fortement invités à le faire, et pourront à cette occasion... <a href="http://thecodersbreakfast.net/index.php?post/2008/08/09/82-php-fin-du-support-de-php4"><em>Lire</em> PHP : Fin du support de PHP4</a></p>http://thecodersbreakfast.net/index.php?post/2008/08/09/82-php-fin-du-support-de-php4#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/72C++ : Histoire d'un langage à succèsurn:md5:7634ae64f9a15bb20f0a4685478dddef2008-06-25T21:16:44+00:002008-07-31T00:06:15+00:00Olivier CroisierAutres langagesc <p>ComputerWorld a eu la chance de réaliser une longue interview de Bjarne Stroustrup, créateur du langage C++.
Celui-ci revient sur les raisons qui l'ont poussé à créer un nouveau langage de programmation, et présente les justifications techniques ou philosophiques ayant conduit à certaines des fonctionnalités les plus controversées du langage.... <a href="http://thecodersbreakfast.net/index.php?post/2008/06/25/76-c-histoire-d-un-langage-a-succes"><em>Lire</em> C++ : Histoire d'un langage à succès</a></p>http://thecodersbreakfast.net/index.php?post/2008/06/25/76-c-histoire-d-un-langage-a-succes#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/67XML : Rétrospective et futururn:md5:5373961886eb0030af2e9136fd2f8b2d2008-02-08T20:37:52+00:002008-07-31T00:09:57+00:00Olivier CroisierAutres langagesxml <p>IBM publie un article intéressant (mais non technique) retraçant les origines de XML, son utilisation actuelle, et son futur probable.
Conçu à l'origine pour la publication de documents (rapports, documents techniques, pages web...), XML a pourtant été peu employé dans ce but, notamment en raison de la complexité et de la mauvaise qualité des... <a href="http://thecodersbreakfast.net/index.php?post/2008/02/08/14-xml-retrospective-et-futur"><em>Lire</em> XML : Rétrospective et futur</a></p>http://thecodersbreakfast.net/index.php?post/2008/02/08/14-xml-retrospective-et-futur#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/17Python 3.0 : la ruptureurn:md5:044d95f1812e30e14b2e2aee96c8fdf22008-02-02T02:51:00+00:002008-11-23T00:55:34+00:00Olivier CroisierAutres langagespython <p>Les développeurs de Python (menés par Guido Van Rossum, à l'origine du projet) ont récemment annoncé que la version 3.0 de ce puissant langage de script ne serait pas rétro-compatible avec la branche 2.x. La faute à une réécriture complète du moteur, le but recherché étant de débarrasser le langage de tous les "hacks" et bugs accumulés au fil des... <a href="http://thecodersbreakfast.net/index.php?post/2008/02/02/10-python-30-la-rupture"><em>Lire</em> Python 3.0 : la rupture</a></p>http://thecodersbreakfast.net/index.php?post/2008/02/02/10-python-30-la-rupture#comment-formhttp://thecodersbreakfast.net/index.php?feed/atom/comments/13