Ruby


h1 11/01/2005 05:19:00 PM


Hier soir j'ai terminé les features manquants dans bedwyr, je dis pas que c'est pas bugué, mais aujourd'hui j'ai pu faire autre chose. Le problème c'est qu'au lieu de bosser, j'ai bouquiné du Ruby, et codé une ébauche d'agenda en Ruby. Je me suis tourné vers ce langage car il dispose d'une meilleure lib iCal que les autres. Il a une grosse communauté, je pense donc pouvoir facilement intégrer si je vais jusque là des possibilités d'édition de calendriers distants via WebDAV. En plus, c'est plutôt plus sympa que Python finalement. L'idée pour l'interface c'est d'avoir au début une seule colonne avec un calendrier, puis de choisir un jour, ce qui provoque l'affichage d'une partie des composants d'agenda, et si on en sélectionne un on a une vue encore plus précise du composant. Là c'est super schématique, mais dans l'idée la colonne agenda peut servir pour filtrer par source, type, mois, contenu, que sais-je. Enfin si vous avez pas compris, j'essaie de faire une interface façon Finder Mac OSX, pompé par le dernier browser de fichiers gtk aussi. Mais là je galère un peu et j'ai pas trop de courage, ya beaucoup de boulot.

Alors quand même, un coup de gueule contre Ruby. Certes c'est du vrai objet, certes il y a quelques concepts sympas. Mais l'héritage multiple a un goût dégeu de meta-programming fait avec les pieds. J'ai du mal avec ces langages mous pas typés, et avec Ruby on peut pas ne pas y penser dès qu'on fait de l'héritage multiple -- je répète ça me plait quand même plus que python je dirais.

Tu programmes ton truc, tu le lances, tout va bien. Tu fais un petit test, trois clics, boum. Ah oui merde j'avais oublié d'initialiser ça. Re-test, re-trois-clics, re-boum. Ah merde, il manque un argument ici, ah merde une typo là. C'est agaçant tout ça, l'objet ça se type aussi, les interfaces ça se vérifie. Quand est-ce qu'on aura un langage sympathique avec une grosse communauté et un système de type fort et serviable ? Comment les gens imaginent faire du bon logiciel sur des langages comme ça ? Ca arrive à tout le monde de faire une typo, c'est le truc le plus simple du monde à détecter par le système de type, et ça peut être très emmerdant d'en laisser trainer une, oubliée dans un bout de code rarement nécessaire. Est-ce que les concepteurs de langages sont paresseux ? Est-ce que le public est paresseux ou RADobsédé ? Le typage ne rend pas forcément un langage pénible, Caml est plutôt léger d'utilisation. Le typage permet même le meta-programming, cf. MetaML & co.

Autre façon de prendre la question: pourquoi diable le binding gtk de Caml est il si pénible à utiliser ? Pourquoi n'y a-t-il pas une communauté Caml plus forte ?

5 commentaires:

  • peut être parceque CamL n'est pas si bien que çà et n'arrive pas à sortir du clan très fermé des universitaires français. (<= provoque pure et dure :))

    Par Blogger Gelnior, Ã 2/11/05 14:54  

  • sinon toujours ok pour t'aider (sous réserve que j'ai le temps). L'autre projet qu'on risque de lancer incessament sous peu, c'est une extension firefox permettant de manipuler un historique visuelle (sous forme de graphe). Est ce que c'est faisable sans trop se prendre la tête, je sais pas, mais en tout cas l'idée est sympa.

    Par Blogger Gelnior, Ã 2/11/05 14:57  

  • Caml est très français et universitaire, mais pas seulement. Ils l'utilisent à la NASA je sais pas pour quoi, et aussi dans quelques grosses industries françaises, cf.
    http://caml.inria.fr/consortium

    Mais c'est vrai qu'il est plutôt connu de gens qu'ont fait de l'info un peu théorique, et appliqué dans des domaines ou la qualité du code est tres importante: NASA, ArianeEspace, Coq. Pour les utilisations grand public plus sexy, ya grave moins de monde. Franchement je pense que c'est beaucoup un problème de communication.

    Bon j'ai répondu à de la provoque pure et dure, chuis con OK.

    Pour démarrer un projet à plusieurs pour de bon je me tâte encore un peu, j'ai des scrupules à lancer un nouveau projet sur gna.org quand j'en ai déja un intéressant au point mort (bed), et plein d'autres choses à faire, chuis pas sûr de m'impliquer assez.

    Par Blogger mrpingouin, Ã 2/11/05 15:08  

  • Nan t'es pas con de répondre, parce que même si c'est caricatural, je pense un peu ce que j'ai dit.
    Du point de vue théorique je vais sans doute pas discuter la qualité du langage avec toi, mais du point de vue utilisation pure c'est autre chose. Pour moi ca compte beaucoup étant donnée le temps passer à programmer.
    Après avoir fait un mini projet sur les arbres binaires de décision, ba j'ai vraiment pas kiffé coder en CamL et je me suis vraiment arraché les cheveux sur les erreurs de type. Après c'est subjectif, je l'admets.

    Par Blogger Gelnior, Ã 2/11/05 17:33  

  • Bah quand on a l'habitude on se rend qu'à moitié compte des trucs durs dans un langage, et pourtant la première approche est importante.

    Cela dit, si tu as un souvenir, j'aimerais bien savoir quelle erreur de typage t'a fait tant chier, et si ce n'est pas négligeable par rapport à l'agacement de lancer son programme et se rendre compte après coup que ah-oui j'ai oublié de déréférencer un truc, c'est pas du bon type. En utilisation avancée, et surtout avec de l'objet, les messages d'erreur de type sont affreux, mais sur le langage de base, ça reste humain il me semblait.

    Par Blogger mrpingouin, Ã 2/11/05 19:12  

Un commentaire ?

< Accueil