
Le système d'exploitation MorphOS, un OS léger et convivial descendant de feu AmigaOS est enfin disponible en version 2.5 sur matériel Apple, eMac, Mac mini G4, en plus des plateformes déjà supportées (Pegasos 1 & 2 et EFIKA).
La procédure d'enregistrement de MorphOS 2.5 est intégrée à la version de démonstration et consiste à :
Les conditions d'utilisation assez restrictives (la licence est liée au matériel) sont destinées à limiter le piratage. Espérons que cela n'empêchera pas les passionnés d'informatique alternative de découvrir ce système plein d'atouts pour ne pas dire culte puisqu'il a le don de déclencher un attachement que certains qualifient d'irrationnel.
L'installation par défaut écrase toutes les données du disque, pour installer MorphOS 2.5 en multi-boot sur Mac Mini reportez vous à ces instructions.
Renseignez-vous sur MorphOS et l'Amiga :
Vous devez être identifié pour poster un commentaire.

Si vous ne l'avez pas déjà fait dépêchez-vous de visionner ou de télécharger
la vidéo conférence de Heinrich Apfelmus sur les GADTs (Generalized Algebraic Data Types).
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Un exercice simple pour débutant en ocaml c'est d'écrire un interpréteur pour un petit langage simple comme par exemple une calculatrice :
type arithmetic = | Cst of int | Neg of arithmetic | Add of binary | Sub of binary | Mul of binary | Div of binary and binary = arithmetic * arithmetic
Mais cet exercice anodin change complètement de nature quand on passe à un langage fortement normalisant, dans ce cas vous devez aussi prouver que le programme se termine toujours et sans accident, quelles que soient les circonstances.
Vous devez être identifié pour poster un commentaire.
Dans un précédent billet je vous expliquais comment créer un MIME pour les sources dans votre langage de programmation favori.
Un MIME (Multipurpose Internet Mail Extension) est une information système pour identifier les types de fichier et leur affecter certains attributs comme une commande par défaut ou une icône personnalisée.
Dans ce billet je vais encore plus loin en vous proposant directement un panel d'icônes taillées sur mesure pour le gestionnaire de fichiers ROX-Filer.
Bien sûr si vous semblez frappé d'injustice du fait que votre langage de programmation favori ne soit pas représenté, vous pouvez me faire une proposition que j'ajouterai pour élargir la gamme de fichiers sources personnalisables.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Ce n'est pas la première fois que je vous parle de jeu-vidéo et de programmation fonctionnelle.
Cette fois il s'agit de Raincat, un jeu SDL écrit en Haskell, pour Windows et Linux.

Le jeu consiste à déposer les accessoires (dans la colonne à droite) sur le parcours du chaton afin que celui-ci atteigne la sortie du niveau malgré la pluie et diverses projections d'eau. Car le Raincat est réellement hydrophobe, la moindre goutte sur son pelage délicat et vous devrez recommencer le niveau.
À vrai dire ce petit puzzle ne m'a pas rendu accro. Maintenir un chaton propre et toujours au sec m'apparaît difficilement comme un enjeu ludique motivant.
Ce qui est peut être plus intéressant que le jeu en lui-même c'est le témoignage que le fossé qui séparaient les langages académiques des applications quotidiennes se comble de jours en jours.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Sylvain Le Gall et l'équipe organisatrice de la 3ième rencontre des programmeurs Objective-Caml vous donnent rendez-vous le 16 Avril à Paris.
Malheureusement je ne pourrai pas être présent cette année.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Le tas binaire est un tableau qui implémente un arbre pseudo-complet vérifiant la propriété de tas.
Un tableau est de taille fixe. Par conséquent un tas binaire est borné, on ne peut y insérer qu'un nombre fixe et limité d'éléments. Bien sûr on pourrait redimensionner le tableau dynamiquement, mais cela a un impact négatif sur le coût des opérations.
Qu'on prêche le style impératif ou le style fonctionnel est étrangé à l'affaire.
La bonne question c'est de savoir si on connait d'avance le nombre d'éléments à insérer ou non.
Si on le connait alors un tas binaire fera très bien l'affaire.
Si on ne le connait pas, alors autant opter tout de suite pour un arbre binaire, même si on veut garder un style impératif.
Ça serait exactement la même problématique avec un dictionnaire. On peut faire une recherche dichotomique dans un tableau trié. Ou alors on peut faire une recherche dans un arbre ordonnée.
Dans les deux cas l'algorithme de recherche est le même, il s'agit dune boucle qui à chaque étape découpe l'espace de recherche en deux moitiés dont une seule peut contenir l'élément recherché.
Le paradigme a bien un impact sur le programmeur mais c'est parce que le programmeur est trop attaché à la syntaxe.
En réalité le paradigme impacte plus fortement la façon de faire que la façon de penser.
L'expérience aussi est un facteur qui impacte la façon de faire.
C'est pourquoi je préfère parler de style plutôt que de paradigme.
Vous devez être identifié pour poster un commentaire.

C'est comme pour un langage à objets, étant un paradigme riche il y a plusieurs définitions possibles pour un langage fonctionnel.
Une définition possible: c'est un langage qui offre les fermetures (une fonction liée à un environnement d'évaluation).
Avantage de cette définition: elle est tolérante.
Inconvénient de cette définition: elle perd de sa pertinence au fur et à mesure que la plupart des langages à objets intègrent plus ou moins cette fonctionnalité.
Une autre définition possible: c'est un langage avec un sytème de typage riche, riche au point qu'il devienne insupportable de ne pas être assisté par une forme d'inférence de type.
Avantage: c'est plus représentatif de la spécificité des langages fonctionnels modernes.
Inconvénient: ça exclut les assembleurs de langages (macro-langages) que sont les vénérables Lisp et Scheme.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Un MIME (Multipurpose Internet Mail Extension) est une information système pour identifier les types de fichier et leur affecter certains attributs comme une commande par défaut ou une icône personnalisée.
Ce billet vous propose d'agrémenter votre station de développement Objective-Caml à l'aide d'un MIME pour vos fichiers source.
Bien sûr ça n'est qu'un exemple que vous pourrez adapter à votre application ou à votre langage de programmation favori.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid 
Le billet d'aujourd'hui a pour but de faire toute la lumière sur la qualification à l'intérieur des modules Objective-Caml.
Vous devez être identifié pour poster un commentaire.
, SpiceGuid Gconfs, l'association de conférences de l'école EPITA organise une conférence F#, ce Jeudi 12 novembre 2009 à 21 h, cours pasteur 14,16 rue Voltaire au Kremlin-Bicêtre.
Les conférenciers sont Laurent Le Brun et un auteur d'ouvrage sur F# dont le nom n'a pas été communiqué.
Pour plus d'informations sur cet évènement consultez la page évènements de GConfs ou le forum forum news épita.
mise à jour: l'autre conférencier est Robert Pickering, auteur de Foundations of F#.
Vous devez être identifié pour poster un commentaire.
Pour bien montrer qu'on maîtrise son sujet il est indispensable d'utiliser le bon vocabulaire.
C'est essentiel pour communiquer sur sa compétence, tout particulièrement lors d'un entretien d'embauche où il s'agira avant tout de montrer à son examinateur qu'il a du talent.
Ce petit lexique non exhaustif est fait pour vous aider à convaincre votre interlocuteur que vous êtes au moins aussi incompétent que lui. Conforté dans l'idée qu'il a enfin trouvé la personne à sa hauteur il ne pourra que vous engager à rejoindre son équipe de professionnels aguerris.
Vous devez être identifié pour poster un commentaire.
Objective-Caml et la programmation fonctionnelle :


| Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 |
Copyright © 2000-2012 - www.developpez.com