Posts Tagged haskell

(Petit) Clône de client telnet en Haskell

Bonjour,

L'autre nuit, muni de café, j'ai souhaité m'amuser avec Haskell. J'ai alors consulté le chapitre sur le réseau en Haskell de Real World Haskell et... j'ai écrit un (très petit) clône de client telnet... qui fait 41 lignes. Le seul soucis étant que dans toute application de ce genre, on doit partager habilement la lecture des entrées de l'utilisateur, et l'affichage de ce que l'on nous envoie. Ceci mis à part, tout cela fonctionne très bien !

Haskell

Read the rest of this entry »

, ,

3 006 Comments

Haskell Platform, ou comment se mettre à Haskell sans soucis !

Bonjour à tous,

Cela fait quelques temps maintenant que la communauté Haskell a sorti Haskell Platform. Il s'agit d'un "paquet" qui regroupe :
- le compilateur haskell GHC, un debugger, un profiler, etc
- les bibliothèques les plus populaires et les plus utilisées, fournies d'office
- tout un tas d'outils auxiliaires, comme haddock, qui permet de générer de la documentation depuis les commentaires du code source.

Il existe des paquets pour déjà quelques distributions Linux, sachant que ce sera bientôt prêt pour Debian et Ubuntu également. Les installeurs Windows et Mac sont très simples également.

Bref, plus aucune raison de ne pas essayer Haskell :)

,

3 127 Comments

GTK+ en Haskell

Bonjour,

M'étant mis à Haskell depuis quelques temps (principalement grâce au désormais fameux Real World Haskell), je me suis dis qu'il était temps que je regarde un peu du côté des bibliothèques pour interfaces utilisateurs. Hé bien, je n'ai pas été déçu. Il y a notamment Gtk2Hs qui fournit un bon binding de GTK+, compatible avec Glade (le designer) et qui permet donc de charger des interfaces depuis du XML.

Gtk2Hs en action

Read the rest of this entry »

, , ,

3 022 Comments

Récupération et parsing d'un flux Atom XML en Haskell

Bonsoir,

Il y a peu, on m'a demandé d'écrire un programme qui récupère un flux Atom XML et qui ne récupère que le titre et l'url des éléments (qui en l'occurence sont des billets aggrégés sur Planet OCaml).

J'ai hésité entre OCaml, C++ et Haskell. Plutôt tenté par du fonctionnel, mon choix s'est vite porté sur Haskell grâce au nombre impressionnant de paquets présents sur Hackage.
J'ai donc opté pour le paquet feed pour la gestion d'Atom et download pour la récupération du XML distant, qui se situe ici).

Haskell Logo

Haskell Logo

Read the rest of this entry »

, , , ,

3 501 Comments

La programmation fonctionnelle n'est pas un jouet pour académiciens

Bonjour,

Cela fait maintenant un moment que j'apprends et pratique la programmation fonctionnelle, aussi bien sur le point de vue théorique en m'intéressant à ses relations avec la théorie des catégories (mathématiques) entre autres, que sur le point de vue pratique, c'est à dire que j'ai mené quelques projets (de petite envergure... oui, c'est proportionnel au temps que je peux passer dessus) à bien.

Quand on dit "langage fonctionnel" ou "programmation fonctionnelle", les gens s'imaginent (pour ceux qui ne connaissent pas) des programmes avec tout un tas de fonctions, c'est tout. Ce n'est pas ça la programmation fonctionnelle. Enfin biensûr il y a des fonctions, mais la programmation fonctionnelle ne s'arrête pas là.

Déjà, la programmation fonctionnelle, c'est une toute autre façon de concevoir des programmes. Détailler toutes les différences avec la programmation impérative serait pire que les 12 travaux d'Hercules et c'est pourquoi je ne le ferai pas. Je vais toutefois vous parler des points qui font que je suis désormais adepte de ce style de programmation.


Read the rest of this entry »

, , , ,

1 026 Comments

Supprimer toutes les instances d'un caractère dans une chaîne en Haskell

Bonjour,

J'inaugure mon compte sur ce blog en y postant mon premier billet, sur Haskell qui plus est !

Je vais vous montrer puis vous expliquer un moyen simple de supprimer toutes les instances d'un caractère donné dans une chaîne, en Haskell... en une ligne, oui.
Il s'agit donc par exemple de pouvoir supprimer tous les 'a' dans (je vais faire dans l'original) le titre de ce billet !

"Supprimer toutes les instances d'un caractère dans une chaîne en Haskell"
doit donc devenir :
"Supprimer toutes les instnces d'un crctère dns une chîne en Hskell"

Read the rest of this entry »

, , ,

1 637 Comments