• [^] # Re: Interessant

    Posté par (site web personnel) . En réponse à la dépêche Beagle 0.2 : le "Desktop Search" gagne en stabilité. Évalué à 1.

    Sans lancé un troll, je ne peux que me poser la question du choix du language (pseudo compilé, interprété dans une machine virtuelle)
    Pourquoi pseudo compilé ? Pourquoi interprété ? C# n'a pas été conçu pour être interprétable, et Beagle n'est PAS interprété. C'est du code natif qui tourne, aussi vite que ton code écrit en C ou n'importe quoi.

    Gaspillé par quoi? Par l'interprétation
    Y'a aucune phase d'interprétation. C'est pas du javascript !
    , par un garbage collector (
    Le GC a des inconvénients, mais aussi des avantages : il est capable de recycler la mémoire, il intervient aux moments opportuns (quand le CPU est peu utilisé par exemple). Tu pourras toujours reproduire le même comportement en C/C++ mais de façon très difficile. Et les projets bien "codés" comme tu dis utilises de plus en plus d'approches similaire, comme Apache qui gère une pile mémoire un peu comme un GC.

    qui te prend 200Mo parce qu'il a vu que j'avais de la place, et que si je lance un nouveau programme ca commence à swappé
    Ca c'est n'importe quoi. Lorsque les ressources mémoires sont trop faibles, le GC s'active et fait du nettoyage pour éviter justement de swapper inutilement.
    Le problème général n'est pas du au GC "qui bouffe de la mémoire" mais à la conception de l'application : en java ou C# on se permet parfois de bouffer inutilement de la mémoire en créant des millions d'objets impossible collecter par le GC : là tu bouffes de la mémoire et tu swappes. Mais tu le dis toi même : faut bien coder. Tu peux avoir exactement le même comportement en C/C++ en allouant plein de mémoire.

    Dsl pour le troll
    C'est rigolo les trolls, mais pour bien troller faut normalement faire semblant de partir sur des vérités pour ensuite dériver sur des conclusions par un raisonnement volontairement fallacieux. Toi tu pars direct avec des idées reçues déjà mainte et mainte fois tuées : C# n'est pas interprété et le GC ne bouffe pas de ressource, c'est le programmeur qui en demande trop.
    Enlève toi de la tête cette idée de machine virtuelle, ce n'est qu'un point de vu des compilateur et du développeur, à l'exécution il n'y a qu'un environnement d'exécution proposant des services (GC, sécurité, etc.) et un programme qui tourne en NATIF.