Goûtons cet Erlang que j'ai envie de voir
mardi 17 octobre 2006 :: perrick :: Ruby, Erlang & dérivés :: 2 commentaires :: aucun trackbackAprès un mini-détour par Ruby (qui aura duré deux soirs), je goûte en ce moment à Erlang. La première étape se passe sans trop d'encombre -- téléchargement, compilation, installation du plugin Eclipse, première surprise : les instructions se terminent pas un point (et non un point-virgule). Et même le point-virgule indique que la fonction n'est pas terminée : comme dans une vraie phrase.
Puis le premier programme. Cela donne quelque chose comme :
-module(robot_http).
-export([format_temp/1]).
format_temp([]) ->
ok;
format_temp([City | Rest]) ->
print_temp(convert_to_c(City)),
format_temp(Rest).
convert_to_c({Name, {c, Temp}}) ->
{Name, {c, Temp}};
convert_to_c({Name, {f, Temp}}) ->
{Name, {c, (Temp - 32) * 5 / 9}}.
print_temp({Name, {c, Temp}}) ->
io:format("Nom : ~w / Temperature : ~w c. ~n", [Name, Temp]).
Pour ceux qui se poseraient la question du Pourquoi essayer Erlang et pas Ruby / Python ou autre chose, ma première réponse serait "parce que". Et ensuite leur livre blanc. Sauf que la vrai réponse est ici http://fr.groups.yahoo.com/group/xp-france/messagesearch?query=erlang.
PS : le nom de la catégorie a changé. De Ruby, je suis passé à Ruby, Erlang & dérivés...
Petit détour vers Ruby
lundi 1 août 2005 :: perrick :: Ruby, Erlang & dérivés :: aucun commentaire :: aucun trackbackLe groupe des praticiens de Paris propose depuis le début de l'année un Dojo pour développeur(s) : le langage de référence y est Ruby. 37signals et David Heinemeier Hansson ont lancé Basecamp, en Ruby. Dans son dernir article Tim O'Reilly répond à une question que je m'étais déjà posé : Perl vaut-il encore le coup ?. Entre les lignes il indique qu'il suit Ruby avec beaucoup d'attention (et que JavaScript a dépassé Perl !). Et bien sûr ce qui suivent mes blogmarks auront remarqué un pic de liens dans cette direction.
Je ne suis pas encore prêt à quitter mon PHP préféré mais aujourd'hui je viens d'écrire :
monOranger = Oranger.new
while monOranger.uneAnneeQuiPasse
monOranger.proposeSesFruits
end
Presque incongru que ça puisse fonctionner... Et bien qu'il me reste encore une leçon dans Learn To Program (with Ruby), je suis déjà a true programmer! C'est fou comme ça me change des 6 ans de développement quotidien avec PHP avant d'obtenir la certification Zend ;-)