dimanche 24 octobre 2010

Erlang

On entend beaucoup parler d'Erlang en ce moment. J'ai relu un article qui parlait d'Ejabberd (serveur XMPP en Erlang), un autre sur CouchDB (base de données orienté documents), on en parle souvent sur InfoQ. J'ai même vu un livre dessus dans le rayon informatique de la Fnac (aux éditions Pearson, j'imagine que c'est le seul ouvrage en Français :)).

C'est un langage fonctionnel créé par Ericsson il y a une vingtaine d'année. Il est donc très orienté réseau. Si j'ai bien compris, il s'adapte naturellement à des évolutions hardware (ajout de cpu, voir de cluster), supporte très bien les augmentation de charge et est super robuste. On en parle beaucoup en ce moment puisque beaucoup d'application cloud l'utilisent pour faire communiquer des machines.

Le code est exécuté sur une machine virtuelle. Le tout est open source et peut être récupéré sur le site officiel.

Cependant, c'est un langage qui est considéré comme "exotique". C'est vrai je n'ai pas une culture qui me permet de comprendre ça (pour l'instant):


%% quicksort:qsort(List)
%% Trie une liste d'éléments
-module(quicksort).
-export([qsort/1]).

qsort([]) -> [];
qsort([Pivot|Reste]) ->
qsort([ X || X <- Reste, X <>= Pivot]).


Source : wikipedia

Mais ça reste intéressant par les temps qui courent.

A votre avis, ça vaut combien un expert Erlang sur le marché ?