rewind a écrit 3425 commentaires

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 1.

    La manière de faire élire des gens sur je ne sais qu'elle base dans l'unique but de choisir une constitution c'est un passage en force

    Ton expression «je ne sais quelle base» montre que tu ne t'es même pas intéressé à ce que tu critiques. Le Front de Gauche propose que soit élue une Assemblée Constituante à la proportionnelle avec comme contrainte, comme ça s'est déjà fait ailleurs, que les constituants ne soient pas élus et qu'ils ne puissent pas l'être après (de manière à éviter de s'écrire une Constitution pour soi). Après, la Constituante travaillera pendant le temps qu'il faut (6 mois, un an) pour écrire la Constitution, et après, le résultat sera soumis à référendum pour validation. Pendant tout le temps de la Constituante, les gens peuvent se former, apprendre, etc. Et Mélenchon a toujours dit que le Front de Gauche proposerait sa vision de la Constitution et donc proposerait une liste pour le défendre mais qu'il se plierait au choix des électeurs quel qu'il soit, comme la règle le veut en démocratie. Je ne vois pas comment on peut faire moins passage en force. Je ne rappellerai pas comment a été conçu la présente Constitution hein.

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à -1.

    Soit les journalistes en question ont fait quelque chose de répréhensible et si Mélenchon se sent lésé il peut saisir la justice, soit c'est juste qu'il n'est pas d'accord et il ne fait pas mieux que les gens qu'il critique. On est pas loin du musèlement de la presse avec ce genre de méthode.

    Le mensonge n'est pas puni par la loi tu sais, c'est quoi cette manie de saisir la justice pour dire qu'on n'est pas d'accord ? Je vais me retrouver à expliquer à quelqu'un qui me reproche de vouloir museler la presse qu'en France, on a la liberté d'expression ce qui implique qu'on a le droit d'avoir des avis différents, qu'on a le droit de les exprimer, qu'on a le droit de critiquer le Petit Journal sur les mensonges qu'il propage et que le Petit Journal a le droit de mentir si ça lui chante. Il n'y a aucune loi contre tout ça.

    Tu dis qu'il changerait s'il accède au pouvoir ? Tu y crois vraiment ?

    Je dis que sa critique des médias ne changera pas (mais connais-tu vraiment sa critique des médias ?) et qu'il a déjà fait des propositions pour améliorer les choses. De plus, il ne veut pas le pouvoir pour être monarque quinquennal, il veut (et le Front de Gauche avec) une autre république (c'est le sujet depuis le début) où les décisions soient plus collectives donc plutôt un régime parlementaire que présidentiel. Donc arrêtez de focaliser sur le ton ou l'attitude de Mélenchon, ce n'est pas le sujet.

  • [^] # Re: manipulations ?

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 3.

    Je reprends ton raisonnement de ce fil de discussion parce que là, c'est quand même énorme. Tu affirmes que pas mal de sympathisants du FG raffolent de Cuba et quand on te demande sur quels «faits» tu te bases pour dire ça, tu réponds :

    Dois-je te renvoyer vraiment sur les interview de journalistes… Ah ce problème avec Le petit journal qui montre le vrai visage des sympathisants… Veuillez cacher ça! (sans compter le discours de Mélenchon lui-même)

    Mélenchon n'a jamais dit qu'il raffolait de la dictature à Cuba, il a dit qu'il refusait de parler de la dictature à Cuba en mettant de côté l'embargo américain qui pèse sur ce pays et que tout le monde oublie bien volontiers. Après, quand tu sais de quoi est capable le Petit Journal concernant Mélenchon, je ne le prendrais pas pour référence en la matière.

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 1.

    Oui : il empêche des journalistes de faire leur travail à partir du moment où les journalistes font un travail qui dérange. J'ai donné un exemple.

    Il n'empêche personne de faire son travail, il refuse de répondre au Petit Journal, et c'est son droit le plus strict. Il n'y a aucune loi en France qui oblige quelqu'un à répondre à un journaliste il me semble. Donc, il n'«interdit» rien à personne, il n'«interdit» pas aux journalistes du Petit Journal d'être des journalistes. Cherche autre chose.

    La liberté à condition qu'on fasse ce que tu veux n'est pas la liberté.

    La liberté à condition qu'on fasse ce que le journaliste veut n'est pas la liberté.

    Fait. Ces faits ne te plaisent pas, soit, mais ça ne change pas que ce sont des faits.

    Oui, sauf que les faits n'ont rien à voir avec ta critique.

  • [^] # Re: manipulations ?

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 0.

    En 2007, tous les candidats à l'exception de Nicolas Sarkozy, avait la 6è République dans leur programme. Je dois en déduire quoi selon toi ?

    comme par exemple à Cuba dont pas mal de sympathisants du FG raffolent.

    Sur quels «faits» tu te bases pour dire ça ? Ah vraiment, les faits… sont chiants !

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à -1.

    Personnellement, je regarde les faits, bien plus révélateurs des idées.

    Qu'est-ce qui, dans les faits, te permet de dire ça alors ? Je remet ta citation : «il essaye d'interdire tant qu'il peut tout ce qui ne va pas dans son sens». Quand est-ce que le Front de Gauche a essayé d'«interdire» quelque chose ?

    Le pluralisme en empêchant des gens de faire leur travail de journalistes (que ça plaise ou pas, les membres du Petit journal ont une carte de presse, ce sont des journalistes), tu arrives à rester sérieux en disant ça? Qui penses-tu convaincre? Tu pourrais essayer d'être un minimum crédible quand même.

    Et le travail de journaliste, c'est quoi ? C'est faire tout ce qu'on veut et raconter n'importe quoi parce que tout est une information et parfois déformer la vérité au point que ça en est risible ? Je ne crois pas. Tu ne sais rien du tout du discours du Front de Gauche et de Mélenchon sur les journalistes apparemment. Allez, je t'aide.

    Que tu ne sois pas d'accord avec le Front de Gauche, c'est ton droit le plus strict, mais quand tu critiques, fais-le de manière argumenté sur des faits et des idées, par sur ta conception personnelle et erronnée de ce qu'est le Front de Gauche.

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 0.

    Si elle divise (ce qui est le cas des manifestants de dimanche et de ceux qui n'y sont pas allé), ça ne va nulle part et on retourne sur une série de constitutions qui vont changer régulièrement.

    La présente constitution a été révisé 24 fois depuis sa création dont 9 fois depuis 2003. Et François Hollande a déjà parlé de la changer. Donc la stabilité constitutionnelle, elle est un peu de façade, ce qui montre bien qu'elle est très loin d'être parfaite.

  • [^] # Re: VIème république

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 1.

    il essaye d'interdire tant qu'il peut tout ce qui ne va pas dans son sens

    Ha oui ? Tu peux me montrer la partie du programme qui dit ça ? Au contraire, le Front de Gauche défend le pluralisme de l'information qui n'existe quasiment plus dans la presse généraliste.

    vive la démocratie, vive la 6ème république, à condition qu'on soit d'accord avec le Front de Gauche.

    On a le droit de défendre une certaine vision de ce qu'on voudrait ou alors c'est interdit dans la démocratie de Zenitram ?

    Ayez le courage de vos opinions : chiche, une manifestation avec comme slogan unique "6ème république", neutre, rassembleur plus que diviseur (tout le monde n'est pas contre l'austérité), pour voir si ça intéresse du monde!

    C'est ce qu'il s'est passé l'année dernière le 18 mars à la Bastille déjà, où l'appel ne comportait que la 6è République, rien d'autre. Et il y a eu 120000 personnes (selon les organisateurs), ce qui a fait suffisamment peur à Hollande pour qu'il gauchise son discours au Bourget.

  • [^] # Re: estimations

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à 2.

    Quant aux cars, si tu arrives a bourrer 65 personnes sans en mettre debout ou sur le toit, tu m'appelles.

    Il existe des cars à deux étages dans lesquels tu mets jusqu'à 85 personnes, et il y en avait là.

  • [^] # Re: Vérification a posteriori

    Posté par  (Mastodon) . En réponse au journal Méthode de calcul. Évalué à -2.

    Je te dirais, ça dépend des journalistes. Ceux de Libé par exemple, ils disent avoir compté cette manif et sont arrivés à 50000… Donc ils n'ont rien compté.

    Par chez moi, le canard régional a pour habitude de procéder à des comptages des manifs depuis très longtemps et sérieusement. Et les chiffres coïncident avec ceux des syndicats plus qu'avec ceux de la police. Et pourtant, vu les propriétaires de la PQR de nos jours (une banque en l'occurrence pour celui-ci), on ne peut pas dire qu'ils soient très favorables aux syndicats.

    Après, je dirais qu'il y a quand même des types de manifs différents. On ne compte pas une manif à plusieurs dizaines de milliers de personnes comme une manif à plusieurs milliers. Dans le premier cas, on va faire comme le fait le journal du comptage à partir de la surface et encore, vu les gens qui ne font pas tout le parcours, qui vont et viennent, ça n'est franchement pas évident. Pour les petites manifs, on compte au clic, c'est plus précis même si ça a ses limites (même en comptant en même temps, il peut y avoir des différences de l'ordre de 10%).

  • [^] # Re: Trollons

    Posté par  (Mastodon) . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 1.

    'fin bon, c'est un peu con, on est juste en train de discuter de l'avantage ou non des threads, déjà été fait mille fois :)

    Non, on discute des threads dans une UI. Personnellement, je suis pour les threads parce que de nos jours, on n'a pas un seul ordi qui ne soient pas multicœur. Mais dans le cas des UI, ce n'est pas forcément un avantage. Le modèle à événements et le modèle thread se marie assez mal. Ou alors, pour des cas très très précis, et hyper bien délimité. Il est vrai que le cas présenté pourrait en faire partie mais j'ai juste voulu montrer que ce n'était absolument pas une obligation, rien de plus.

  • [^] # Re: Trollons

    Posté par  (Mastodon) . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 1.

    Je ne peux pas les garantir et toi non plus. Parce qu'avec une charge très élevée, tu auras beau faire ce que tu veux, tu ne pourras rien garantir du tout sur le nombre de fps (une des raisons est que le noyau Linux n'est pas un noyau temps réel).

    Ensuite, avec mon design, le seul truc qui va un peu gêner, c'est que la décompression sera un poil plus lente parce qu'elle est intégrée une boucle d'affichage. Mais il fallait montrer que c'était possible, pas que ça aille vite.

  • [^] # Re: Trollons

    Posté par  (Mastodon) . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 3. Dernière modification le 29 avril 2013 à 22:38.

    Tu dois dezipper un fichier de 1gb, tu preferes quoi ?

    Je regarde l'API de zlib qui permet de décompresser en flux au fur et à mesure donc je fais un widget qui permet d'afficher la progression de la décompression que je mets à jour au fur et à mesure que je décompresse. Ça ne fige pas l'interface, ça permet à l'utilisateur d'avoir un rendu et pas besoin de thread ou de process séparé.

  • [^] # Re: Propriétaire non, privateur oui

    Posté par  (Mastodon) . En réponse au journal Privateur.... Évalué à 0.

    Il est bien connu que combattre un extrême avec son extrême opposé, ça marche à tous les coups.
    Il est également parfaitement moral d'adopter les mêmes méthodes jugées nauséabondes que ses adversaires, mais en expliquant que "c'est eux qui ont commencé!", on pourra toujours dire après que c'est eux qui manquent de morale et nous qui nous qui n'avons pas le choix.

    Je n'ai porté aucun jugement moral pour ma part, c'est toi qui ramène tout à ça. Tu as l'air de considérer la bataille des mots comme quelque chose qu'il faut éviter, pas moi. Ce n'est pas une méthode nauséabonde, c'est juste un des plus vieux trucs au monde. Quand tu lis 1984, tous les mots ont changé et veulent dire le contraire de ce qu'ils signifiaient au départ. Tu veux vivre dans un monde comme ça ? Pas moi. Et pour ne pas vivre dans un monde avec de l'informatique de confiance, il faut utiliser d'autres mots et combattre ceux-là. Ou alors, donne-moi une méthode «morale».

    L'explication logique, c'est "voilà la seule définition de la Liberté valide: celle de la sainte FSF/OSI". Cette définition de la Liberté est subjective et non rationnelle.

    La FSF ou l'OSI n'ont rien de saint. Mais faudrait peut-être se réveiller. La FSF et ses quatre libertés, c'est le milieu des années 80, les DFSG, c'est 1997, l'OSI, c'est 1998. Ça fait plus de 20 ans, et presque 30 pour la FSF, que tout le monde du logiciel s'accorde sur la même notion de liberté (à quelques chouias près). Ça date pas d'hier. Donc, vouloir remettre en cause ça, je te souhaite bien du courage. Les seuls qui veulent le remettre en cause, c'est ceux qui font du Shared Source, c'est-à-dire qui veulent faire passer des vessies pour des lanternes.

    Cf ce que je disais ci-dessus: œil pour œil, combattre le mal par le mal, tout ça, très peu pour moi!

    C'est juste mener une bataille sur un terrain. Point. Rien de moral, aucune notion de bien/mal là dedans, juste des points de vue différents. On a encore le droit de défendre un point de vue ou pas ? C'est mal de ne pas être d'accord ?

    Les arguments sont certes indépendants de GNU, mais indissociables de la FSF/OSI ou tout simplement d'une définition de la Liberté que tu souhaites imposer en jugeant ce qui est Libre (mot à forte connotation positive) et ce qui est privateur (mot à connotation fortement négative).

    Je ne juge rien, je constate des choses, basé sur le droit d'auteur, puisque le logiciel est régi par le droit d'auteur.

    Moi je te dis, et c'est ma conviction, qu'on ne convainc les gens non engagés/impliqués/initiés qu'en ayant une approche la plus neutre possible.
    Tout ce qui ressemble de près ou de loin à "nous c'est le bien et eux le mal" de la part de quelqu'un qui n'a pas déjà une très forte aura lui fera perdre immédiatement en crédibilité.
    Utiliser des mots à forte connotation positive et négative, c'est chercher cette assimilation au bien et au mal.

    C'est toi qui n'arrête pas de tout ramener à une question morale. J'ai, depuis le début, dit qu'il n'y avait rien de moral là dedans, juste des questions banalement juridiques. Et des mots pour caractériser des situations juridiques différentes. Dont un, «libre», qui est utilisé depuis plus de 20 ans !

    D'autre part, quand j'essaie de convaincre, je n'use pas d'arguments moraux qui passent pour des arguments d'autorité, donc qui sont irrecevables selon moi. Je fais appel au raisonnement des gens, à leur sens critique. Je te mets au défi de me présenter le logiciel libre de façon neutre, surtout si tu ne veux pas utiliser les définitions acceptées par tous et qui n'ont rien de morales.

    Conclusion: je continuerai à dire qu'utiliser le mot "privateur" est non seulement un terme qui décrit mal les faits, mais qui en plus dessert la cause en faisant une fois de plus passer les Libristes pour des prosélytes.

    Ça, c'est ton point de vue. Tu n'as répondu à aucun des arguments que j'ai avancés sur le non-sens qu'il y a à utiliser privateur, et sur la justesse du terme privateur par rapport à la définition de libre d'un point de vue juridique. Tu n'as qu'un point de vue moral sur la question, et dans ces cas là, chacun sa morale je dirais.

    À t'écouter, on a l'impression qu'il ne faut rien faire, accepter les choses telles qu'elles sont (ou telles que les autres, qui n'ont pas forcément les même intérêts, les façonnent) et qu'au final, avec de la morale, tout le monde ira dans le droit chemin et comprendra, on ne sait trop comment, les choses. Excuse-moi de ne pas partager cette vision du monde.

  • [^] # Re: Propriétaire non, privateur oui

    Posté par  (Mastodon) . En réponse au journal Privateur.... Évalué à 1.

    c'est surtout un parti pris extrêmement biaisé. Même la GNU GPL prive l'utilisateur de certains droits (par exemple celui de faire tout et n'importe quoi avec ce code).

    Absolument pas. Comparé à un logiciel privateur, la GPL donne le droit de distribuer le logiciel dans certaines conditions. Tu n'as pas ce droit avec un logiciel privateur puisque souvent, tu n'as pas le droit de le distribuer tout court.

    Après, on peut troller sur copyleft vs non-copyleft, mais c'est un tout autre débat et il y a d'autres fils de discussion dans ce journal pour troller sur le sujet.

  • [^] # Re: Propriétaire non, privateur oui

    Posté par  (Mastodon) . En réponse au journal Privateur.... Évalué à -2.

    C'est justement ce référentiel centro-libriste qui fait qu'utiliser "privateur" et expliquer pourquoi n'aura pas d'écho auprès du grand public.

    Ha ben tu peux utiliser le référentiel d'en face et dire, comme le fait CrEv un peu plus haut, que le droit d'auteur protège. Donc un logiciel privateur sera dorénavant un logiciel protecteur et donc, par conséquent, un logiciel libre sera un logiciel agresseur (ben oui, puisqu'il n'est pas protecteur). C'est du même niveau que "informatique de confiance" (qui ne fait pas confiance à l'utilisateur). Allez, maintenant, je t'invite à aller expliquer que les logiciels agresseurs sont une très bonne chose, on va rire.

    M. Lambda ne connaît ni la FSF ni l'OSI. Quand tu lui expliquera ce que c'est et que donc "privateur", c'est "pas Libre suivant l'OSI et la FSF", il écoutera autant que le créationniste qui tente de le convaincre que si c'est pas dans la Bible, c'est que c'est pas vrai.

    On peut aussi donner une explication simple et pédagogique, hein. Tu nous fais un joli homme de paille là.

    Tu justifies "privateur" en disant que ça définit bien "le camp d'en face" vu de "ton camp à toi". C'est à peine plus relevé que les surnoms affectueux donnés à l'ennemi en temps de guerre.

    Mais oui, nous vivons dans un monde merveilleux où toutes les personnes ont le même intérêt. Je regrette de te l'apprendre, mais Microsoft qui désigne la GPL comme un cancer nous considère bien comme son ennemi. Ce n'est pas la guerre, mais il y a une bataille quand même. Sinon, l'APRIL n'aurait pas grand chose à faire.

    Et puis, en regardant comme ça, je dirais que quasiment tout contrat est privateur. C'en est même la définition: ajouter des contraintes aux deux parties, alors que chaque clause est faite pour réduire le champ des droits minimum donnés par la Loi.

    Réduire ? Je ne pense pas. Justement, une licence libre accorde plus de droits que la loi (qui par défaut n'accord pas grand chose pour le droit d'auteur, à part l'usage à titre privée).

    Enfin, question finale:
    Pourquoi tant de haine??
    Tu n'aimes pas les logiciels propriétaires? Et bien ne les utilise pas et fiche la paix aux éditeurs!
    Tu veux militer pour le Libre? Et bien promeut le Libre au lieu d'insulter "le camp d'en face" (ce qui ne marche quasiment jamais d'ailleurs).

    Mais je ne hais personne, je l'ai dit, il n'y a pas de morale à avoir là dedans, juste du juridique bien froid. Et utiliser le mot privateur n'empêche personne de faire du logiciel privateur. Je le répète, chacun fait bien ce qu'il veut de son code, comme la loi l'y autorise. Personnellement, je préfère le libre, et j'explique pourquoi c'est mieux. Mais je ne vais pas aller mettre la tête des auteurs de logiciels privateurs au bout d'une pique pour autant (en revanche, certains auteurs de logiciels libres comme Lennart P.[/troll]).

    Je vais prendre le contre-pied de ce journal et dire qu'on n'est pas obligé d'adhérer à la secte du grand GNU quand on utilise le mot privateur, on peut aussi l'utiliser parce qu'on a réfléchi à la question et qu'on a des arguments (j'en ai donnés quelques-uns).

  • # Propriétaire non, privateur oui

    Posté par  (Mastodon) . En réponse au journal Privateur.... Évalué à 2.

    Moi je suis partisan de dire privateur à la place de propriétaire et cela, pour deux raisons.

    Tout d'abord, logiciel propriétaire est un non-sens. Personne n'est propriétaire d'un logiciel, le logiciel est régi par le droit d'auteur et le droit d'auteur n'accorde pas un droit de propriété mais un monopole temporaire. 70 ans après la mort du dernier auteur de MS DOS, ce logiciel sera dans le domaine public et donc sera utilisable, modifiable, distribuable par tout le monde. Le terme propriétaire est inadéquat et ne peut qu'entretenir une confusion.

    Ensuite, le terme privateur s'oppose à libre. Et effectivement, du point de vue du droit d'auteur, on prive l'utilisateur de certains droits. Que ce soit la FSF (avec les 4 libertés) ou l'OSI (ou les DFSG), on a une définition des droits minimum qu'un logiciel doit accorder pour se revendiquer libre (GPL ou BSD, peu importe). Si un de ces droits n'est pas accordé, c'est bien une privation du point de vue de l'utilisateur dans un référentiel libre. Donc privateur est tout à fait approprié.

    Je vois beaucoup de message ici qui se placent sur le plan de la morale, mais on n'est pas dans le domaine de la morale, on est dans le domaine du droit, à mon sens. Dire qu'un logiciel est privateur n'a rien de péjoratif, chacun distribue bien ses logiciels comme il le souhaite. C'est juste une caractérisation juridique du logiciel : il prive l'utilisateur de certains droits qui seraient accordés avec un logiciel libre. Point. Rien d'autre.

    Enfin, les mots ne sont jamais neutres. Croire qu'une expression est plus neutre qu'une autre est un leurre. Les mots utilisés portent souvent une arrière-pensée et la bataille des mots est aussi importante à mener que le reste. Regardez ces quelques termes : "propriété intellectuelle", "informatique de confiance", "le téléchargement, c'est du vol", etc. Vous comprendrez que nous, qui faisons du logiciel libre, avons tout intérêt à employer des mots précis pour mieux faire comprendre les choses, parce que nous n'avons pas des millions de brouzoufs pour faire des campagnes de pub. Et je pense que le mot privateur permet de mieux expliquer ce qu'est un logiciel libre alors que propriétaire (avec tout l'imaginaire qu'il y a avec ce mot) ne fait qu'embrouiller.

  • [^] # Re: Pour ceux qui disent que GTK+ n'évolue plus...

    Posté par  (Mastodon) . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 6.

    Quand je lis ces posts, je n'appelle pas vraiment ça de l'évolution mais de la maintenance…

  • [^] # Re: "Le visiteur polymorphe"

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 3.

    Tu sélectionnes l'URL telle qu'affichée dans Firefox

    Du coup, ça marche moins bien avec Chromium ;)

  • [^] # Re: un inconvénient des templates

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 4.

    Bah, autant dire que le C++ est imbittable, ce qui est probablement vrai. Ça fait quelques années que j'ai tendance à utiliser systématiquement des langages de haut niveau, et quand je vois des trucs comme ça, c'est clair que je n'ai aucune envie d'y retourner :-)

    Sauf qu'on aura toujours besoin de langage comme C/C++ pour implémenter des trucs qui doivent aller vite, comme les interpréteurs de langage haut niveau ou des compilateurs. Chacun son domaine.

    Mais bon, il y a plus imbittable que le code C++: les erreurs retournées par le compilateur, avec un petit bonus quand la STL est impliquée et qu'il faut scroller dans le terminal pour retrouver le début de la dernière erreur…

    Effectivement, tu n'as pas dû utiliser un compilateur C++ depuis bien longtemps et notamment clang parce qu'il y a eu de très très très gros progrès sur les messages d'erreur. clang a commencé et gcc est en train de s'y mettre.

  • [^] # Re: Polymorphisme

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 3.

    Si tu ne veux pas montrer ton membre dans l'espace public, il suffit d'encapsuler l'appel à Visitor::visit dans une fonction qui renvoie la valeur du membre. Au passage, cela permet de donner un vrai nom à la fonction au lieu de visit.

    visit n'est jamais appelé directement de l'extérieur (il l'est uniquement dans les fonctions accept), c'est bien accept qui est appelé mais soit, on peut reprendre ton argument et l'adapter à accept. C'est juste une question de style et de simplicité et de choix.

    L'implémentation classique du modèle n'est d'ailleurs pas ce que tu donnes: dans Base la méthode accept est virtuelle et abstraite et implémentée dans les classes concrètes Derived1, Derived2. Dans ce cas Visitor::visit(Base& b) est b.accept(*this).

    Alors ça, ça dépend de ce qu'est Base et de ce qu'est Derived1 et Derived2. Et si on applique le petit plus que j'évoque (appeler le visiteur de la classe mère), tu auras un accept pour Base.

  • [^] # Re: Avantage pas compris

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 2.

    Je ne dis pas le contraire. C'est juste que je ne trouve pas que c'est considérablement plus complexe au vu de la différence de complexité entre l'implémentation polymorphe et template.

    Je ne trouve pas l'une tellement plus complexe que l'autre. La complexité ne se trouve pas au même endroit, c'est tout.

    Là où ça deviens vraiment plus complexe c'est si tu souhaite paralléliser le calcul des sous résultats.

    Alors là, pour le coup, ça ne change strictement rien, ça dépendra essentiellement de l'état interne de ton visiteur (est-ce qu'on peut appeler le visiteur en même temps sur la branche droite et la branche gauche, pour reprendre l'exemple) et pas de la manière dont tu as implémenté ton visiteur (template ou polymorphisme).

  • [^] # Re: Avantage pas compris

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 2.

    Ajouter un attribut à ton visiteur avec un accesseur.

    Pas que. Comparons.

    Version avec le type de retour.

    Type *visitBinaryExpression(BinaryExpression& expr) {
      Type *left = expr.getLHS()->accept(*this);
      Type *right = expr.getRHS()->accept(*this);
      return ComputeType(left, right);
    }
    
    

    Version sans le type de retour.

    void visitBinaryExpression(BinaryExpression& expr) {
      expr.getLHS()->accept(*this);
      Type *left = getResult();
      expr.getRHS()->accept(*this);
      Type *right = getResult();
      Type *result = ComputeType(left, right);
      setResult(result);
    }
    
    

    Ben je préfère la première version dans ce cas, beaucoup plus lisible et compréhensible.

  • [^] # Re: Avantage pas compris

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 3.

    Justement, je trouve plutôt utile que le compilateur refuse de compiler quand le cas n'est pas pertinent, ça évite les bogues…

    Quand tu ajoutes une classe à ta hiérarchie, avec le visiteur polymorphe, tu dois déjà surcharger le accept. Bon, tu peux mettre un truc vide dans accept mais c'est un coup à l'oublier après (ça m'est déjà arrivé). Du coup, tu vas ajouter une méthode virtuelle au visiteur pour traiter cette nouvelle classe. Et il faudra ensuite ajouter toutes les surcharges dans tous les visiteurs. Enfin bref, tu te retrouves à devoir ajouter plein de code pour une simple petite classe.

    Avec la version template, sans rien faire dans le accept et dans le visit, ça compile, et ça tombe dans le cas de base. Après, tu ajoutes le cas qui va bien dans le visit, et là, ça va même marcher pour quelques visiteurs pour lesquels tu auras regroupé les traitements pour une des classes mères. Donc dans ce cas, avec très peu de code, ça fonctionne plutôt pas mal.

    Je ne vois vraiment pas l'intérêt?

    Disons que tu veux afficher tes structures, là pas de souci, tu peux utiliser le visiteur qui renvoie void. Ensuite, tu veux calculer un truc sur tes structures, tu peux vouloir un visiteur qui renvoie directement le résultat du calcul plutôt que de passer par un membre. Exemple concret : tu veux calculer le type d'une expression binaire, tu vas définir un visiteur qui renvoie un truc de type Type que tu vas appliquer à des trucs de type Expression. Tu vas d'abord récupérer le Type de l'expression de gauche (à l'aide du même visiteur), puis le type de l'expression de droite puis, en fonction de l'opérateur, tu vas calculer le type de l'expression binaire et le renvoyer. Ne pas utiliser de type de retour va complexifier considérablement ton code.

    Pas vraiment un plus, puisque tu le dis toi-même, ça s'applique aussi à la version polymorphe?

    C'est un plus dans le sens où ça se fait rarement sur les versions polymorphes (je n'ai jamais vu aucun exemple qui le faisait) mais que ça pourrait se faire.

    Si je résume, on aurai la version template qui permet d'éviter d'avoir à utiliser la RTTI et de casser l'ABI, et la version polymorphe qui elle offre de meilleures performances?

    En gros. C'est plus subtil, il y a aussi des considérations de style, de flexibilité, etc.

  • [^] # Re: Dire que certaine pense que le Ocaml est illisible...

    Posté par  (Mastodon) . En réponse au journal Visiteurs en C++. Évalué à 1.

    Pour le coup, je trouve qu'en essayant d'adapter au pied de biche un pattern objet à CaML, tu rends le CaML illisible. Je suis entièrement avec ta conclusion ceci-dit.