foobarbazz a écrit 464 commentaires

  • [^] # Re: De la dictature de la majorité

    Posté par  . En réponse au journal Faut tout faire soi-même !. Évalué à 3. Dernière modification le 24 juin 2016 à 17:07.

    Sérieusement, trouverais-tu démocratique 50.0001% des gens qui traitent en esclave 49.9999% des gens? quel lien avec la démocratie?

    Dans une démocratie comme la notre où pour un referendum on fixe la limite à 50%, oui, ça le serait. 50% est arbitraire, on aurait pu prendre 10%, ou 90%, 50% a juste l'avantage de la symétrie.

    La démocratie n'est pas une panacée, quand t'as un peuple composé d'une majorité de connard, t'as un gouvernement de connards. C'est démocratique.

  • [^] # Re: HS

    Posté par  . En réponse au journal Faut tout faire soi-même !. Évalué à -2.

    Ca n'a surtout rien a voir, car le mariage a l’église n'a aucune valeur légale.

    Hummmmm, en France oui, quid de l'étranger ?

  • [^] # Re: De la dictature de la majorité

    Posté par  . En réponse au journal Faut tout faire soi-même !. Évalué à 5. Dernière modification le 24 juin 2016 à 16:36.

    Dictature de la majorité ? Et si on l’appelait démocratie tout simplement ? La vraie, pas celle où on vote pour choisir son maître. Et encore, dans une vraie démocratie, les gens seraient bien informé, ils ne subiraient pas la propagande de ceux qui ont beaucoup d'argent/de pouvoir à gagner ou perdre suivant le résultat du suffrage.

    D'une manière générale, les consensus c'est rarement bon, je sais que c'est à la mode, qu'on mesure la pertinence d'une politique à son degré de modération (quelle tristesse), mais c'est pas une vertu en soit, la modération. L’extrémisme non plus hein ? Sortir « un peu » de l’Europe, pour faire plaisir à tout le monde… faut voir. Pour prendre une image, quand le problème c'est de traverser un lac, tu peux soit nager soit le contourner, si t'as 51% pour le contourner, ça serait con de le faire en nageant pour faire plaisir au 49%.

    Et oui, le suffrage était serré, il y a deux explications possible, désaccord franc, comme tu le suggère, ou au contraire le désaccord super mou. Un peu comme si on organisait un référendum pour savoir si on veut des pommes ou des abricots à la cantine. Je pense que la tristesse des perdants serait gérable sans avoir à inventer un fruit mi pomme mi abricot.

  • [^] # Re: J'ai rien compris :(

    Posté par  . En réponse au journal Ethereum, The DAO et un petit malin sont sur un bateau.... Évalué à 7. Dernière modification le 21 juin 2016 à 11:26.

    Mon opinion personnelle est que ceux qui critiquent Ethereum et toutes les monnaies virtuelle sont à coté de la plaque. La critique est aisée, mais l'art est difficile.

    Sauf à sniffer du silicium jusqu'à en avoir des hallucinations, dans ce genre de système, la main invisible que personne n'a jamais vu, personne ne la verra jamais. L'art est difficile parce que ce genre de système est intrinsèquement instable et divergent. C'est tout… Jusqu'à preuve du contraire, naturellement. Quand on met au point un système qui ne repose pas sur une théorie solide, bah… ouai, ça marche pas (je ne parle pas des propriétés cryptographique hein ? ça c'est solide et il y a de la vrai science derrière).
    Ça me fait penser à un mec qui essayerait de faire de la bière à partir de gazole, la critique est aisée et l'art est difficile… Tu m'étonne ^ ^

  • [^] # Re: C'est bien la peine !

    Posté par  . En réponse au journal EDSL et F-algèbres. Évalué à 2.

    Intéressant ce bench, ce que j'y vois c'est que ça coûte super cher les fermetures.
    Sauf erreur de ma part lors d'une évaluation avec dans ASTk il y a deux fois plus de fermetures créée que dans Bohem (c'est Boehm à propos ;-))
    et dans AST il n'y en a pas, le tout pour autant de calculs utiles.

    Avec Bohem tu paye cher le fait d'avoir des fermetures à gogo, mais ma peut être intéressant si tu veux faire plein d'évaluation, genre tu as une algèbre paramétrée par des trucs et tu veux trouver des paramétrés qui font que ton expression a certaines propriétés ?

    le truc à remarquer c'est que si l'on deux expression identiques ea:ast et eb:bohem, alors en gros eb == fun f g -> fold f g ea,
    le lambda terme eb c'est le même que celui qui code fold appliqué partiellement sur ea, et donc pour chaque évaluation tu peux économiser le prix de ce fold.

  • [^] # Re: Dans l'art voluptueuse de ne rien comprendre

    Posté par  . En réponse au journal EDSL et F-algèbres. Évalué à 4.

    C'est juste une question de culture (pas culture générale, la culture "environnementale"). Ça fait un petit moment que je baigne un peu la dedans (programmation fonctionnelle, théorie des catégories, algèbre générale, etc.) je suis encore loin d'être à l'aise. Mais ça a du sens tout ça.

    Je comprend parfaitement que ça puisse laisser cette impression : C'est très abstrait, il y a un formalisme super lourd, et les choses décrites sont généralement super simples.
    Et les matheux aiment bien les formalismes imbitables… Et là c'est des maths faites par des informaticiens, qui culturellement vont plus volontiers faire des grosse impasse sur la rigueur dans un but pédagogique.

    Ça me fait un peu l'effet que tu décris quand je lis un article sur WTF.js, le super framework whatever-oriented qui permet de mettre à genoux une machine dernier cri avec un hello world.

    Je connaissais pas cette présentation, et je vais la regarder avec grand plaisir :-)

  • [^] # Re: Ah mince

    Posté par  . En réponse au sondage Pour mes principaux déplacements quotidiens, j'utilise en majorité :. Évalué à 7.

    Oui, et puis on peut plus voter plusieurs fois, c'est nul, on se croirait sur le site du figaro.

  • [^] # Re: Ponctuation

    Posté par  . En réponse au journal pgdp.net: Contribuer à des projets libres quand on a pas le temps. Évalué à 0.

    Et l'idée de les enlever tous c'est que c'est plus facile de trouver où il faut les mettre (ou pas) pour l'adapter au français de France par exemple, que de les enlever automatique (parce qu'ils peuvent n'être que des aberrations) ?

  • [^] # Re: L'autohebergement oui, l'ADSL non

    Posté par  . En réponse au journal L'auto-hébergement vulgarisé. Évalué à 2.

    Les services secrets a priori ne veulent pas "mes données" mais "des données". Si les miennes sont à porté de script, elle sont intéressantes, s'il faut défoncer ma porte pour (peut-être) les avoir, elles le sont beaucoup moins.

    Et je parle des services secrets, mais c'est pareil pour les publicitaires, ou toute autre institution intéressées par des données…

    Certes, tu limite fortement l'exposition de tes données en ayant ton serveur chez un hébergeur, mais cette solution est loin d'être équivalente à avoir ta machine à coté de ta box.

    Et même si je fais l'objet d'une surveillance ciblée, s'ils veulent mes données je préfère qu'elles soient chiffrés, par ma machine, chez moi. De sortes qu'ils ne puissent y accéder qu'à grand frais et avec mon consentement.

  • [^] # Re: L'autohebergement oui, l'ADSL non

    Posté par  . En réponse au journal L'auto-hébergement vulgarisé. Évalué à 1.

    Non, ça veut dire « J'utilise la machine de quelqu'un d'autre » et ça soulève plus ou moins les même problèmes que l'utilisation de services en ligne.

    T'as un compte mail en ligne, les services secrets peuvent taper dedans.
    T'as une machine virtuelle en ligne qui fait tourner serveur mail, les services secrets peuvent taper dedans. La seule différence c'est le protocole qu'il devront utiliser pour ça, c'est bonnet blanc et blanc bonnet.

  • [^] # Re: cool mais...

    Posté par  . En réponse au journal L'auto-hébergement vulgarisé. Évalué à 10.

    google est auto-hébergé et ils n'ont pas de soucis à ce niveau là.

  • [^] # Re: deux solutions :

    Posté par  . En réponse au message Haskell : simplifier 2 "case" imbriqués. Évalué à 2.

    Haha, oui et non ^
    C'est quelque chose que je voulais régulièrement faire depuis un moment. Voilà, c'est fait :-)

  • [^] # Re: deux solutions :

    Posté par  . En réponse au message Haskell : simplifier 2 "case" imbriqués. Évalué à 2.

    Honte à moi, j'ai pas vu la jolie solution que tu suggérais pourtant :

    main :: IO ()
    main =  (liftM2 . liftM2) f (parseCSVFromFile "laposte_hexasmal.csv") (parseCSVFromFile "listing.csv")
                >>= either (error . show)  putStrLn

    Pas du tout besoin de transformeurs, c'est même pas monadique en fait, c'est juste applicatif.
    (tes valeurs sont sont encapsulées deux fois, dans (Either ErrorBidule), puis dans IO. Ta fonction f à deux parametre peut être liftée une fois pour travailler sur Either ErrorBidule, et une seconde fois pour travailler sur IO.

  • # deux solutions :

    Posté par  . En réponse au message Haskell : simplifier 2 "case" imbriqués. Évalué à 2. Dernière modification le 12 mai 2016 à 15:49.

    Deux solutions :

    Tu peux fusionner les deux case, ça change légèrement la sémantique vis à vis des exceptions :

    main :: IO ()
    main = do
        r <- parseCSVFromFile "laposte_hexasmal.csv"
        r2 <- parseCSVFromFile "listing.csv"
        case (r,r2) of
            (Right cps,Right listing) -> putStrLn . f cps $ listing 
            (Left err, _) -> error $ show err
            (_, Left err) -> error $ show err

    Avec la monade Either

    main :: IO ()
    main =  calcul >>= either (error . show)  putStrLn --  either est un destructeur de Either
    
    -- calcul :: IO (Either Text.Parsec.Error.ParseError String)
    calcul = do
        r <-  parseCSVFromFile "laposte_hexasmal.csv" -- tu fais tes IO
        r2 <-  parseCSVFromFile "listing.csv"         -- là aussi
        return $ do cps <- r              -- les résultats de tes IO sont monadiques
                    listing <- r2         -- tu peux t'en servir pour monader
                    return $ f cps listing

    Sauf erreur de ma part, tu peux pas utiliser de tranformeurs car la monade IO est nécessairement au fond de la pile de monade. Un transformeur mT ne peut que produire une monade IO, là il faudrait une monade IOT qui produit un calcul dans Either
    si ça existait il serait possible de sortir de la monade IO, (tu aurais une fonction de type (IO (m a) -> m a), c'est pas bon.