{-# LANGUAGE OverloadedStrings #-}importControl.Concurrent.STMimportqualifiedData.ByteString.Char8asCimportFmtimportNetwork.WaiimportNetwork.HTTP.TypesimportNetwork.Wai.Handler.WarpimportSystem.EnvironmentimportSystem.Random.StatefulimportText.Readapp::RandomGeng=>Int->TGenMg->ApplicationappnImgsrngVar_respond=doi<-atomically$applyTGen(uniformR(1,nImgs))rngVarleturl=fmt$"https://avatar.spacefox.fr/Renard-"+|i|+".png"respond$responseLBSstatus302[("Location",url)]""main::IO()main=doargs<-fmapreadMaybe<$>getArgsrngVar<-getStdGen>>=newTGenMIOcaseargsof[Justport,JustnImgs]->doC.putStrLn$fmt$"listening on port "+|port|+""runport(appnImgsrngVar)_->C.putStrLn"usage: <port> <nImgs>"
compilation/exécution:
$ ghc -O2 -rtsopts serve.hs
$ ./serve 8080 21
benchmark (AMD Ryzen 7 PRO 4750U, 1.7GHz) :
$ ab -n 100000 -c 10 http://localhost:8080/
This is ApacheBench, Version 2.3 <$Revision: 1879490 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 10000 requests
Completed 20000 requests
Completed 30000 requests
Completed 40000 requests
Completed 50000 requests
Completed 60000 requests
Completed 70000 requests
Completed 80000 requests
Completed 90000 requests
Completed 100000 requests
Finished 100000 requests
Server Software: Warp/3.3.20
Server Hostname: localhost
Server Port: 8080
Document Path: /
Document Length: 0 bytes
Concurrency Level: 10
Time taken for tests: 5.373 seconds
Complete requests: 100000
Failed requests: 0
Non-2xx responses: 100000
Total transferred: 13157347 bytes
HTML transferred: 0 bytes
Requests per second: 18612.30 [#/sec] (mean)
Time per request: 0.537 [ms] (mean)
Time per request: 0.054 [ms] (mean, across all concurrent requests)
Transfer rate: 2391.49 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 1
Processing: 0 0 0.1 0 6
Waiting: 0 0 0.1 0 5
Total: 0 1 0.1 1 6
Percentage of the requests served within a certain time (ms)
50% 1
66% 1
75% 1
80% 1
90% 1
95% 1
98% 1
99% 1
100% 6 (longest request)
Pour préciser : ce journal présente juste les commandes de base, avec les deux systèmes, mais ne donne pas d'avis. Pour un usage "basique", les deux systèmes se ressemblent effectivement beaucoup mais dans le détail, ils ont chacun leur intérêt.
Perso je connais très peu Guix; je reste sur NixOS car l'habitude, l'intégration de Haskell, et les paquets un peu plus nombreux.
de plus tu ne réponds pas sur les cout sachant qu'une phase I coute beaucoup moins qu'une phase III
Heu tu es gentil mais je ne suis pas en train de me défendre devant le tribunal. Je dis juste que les vilains big pharma subventionnés par les gouvernements, c'est pas tout à fait la vérité. Mais comme d'habitude, c'est juste impossible d'avoir une discussion posée sur ce genre de sujet, il faut toujours que ça tombe dans des extrêmes.
Allez salut.
Le partenariat Pfizer-BioNTech ne reçut pas de financement gouvernemental pour la recherche.
L'opération Warp Speed passa commande d'achat anticipé de deux milliards de dollars avec Pfizer pour fabriquer cent millions de doses d'un vaccin Covid-19 à utiliser aux États-Unis lorsque le vaccin s'avérerait sûr, efficace, autorisé notamment par la Food and Drug Administration
Nous n'avons jamais pris d'argent du gouvernement américain, ni de personne d'autre, d'ailleurs." En fait, c'est tout le contraire. C'est cette entreprise qui a parié sur le laboratoire allemand BioNtech. Et qui l'a financé.
D'après cet article, il y eu des dizaines de projets de vaccin. Donc oui les 3 ou 4 vaccins qui ont abouti vont certainement rapporter des milliards. Et les dizaines qui ont échoué ?
"L'enjeu est aussi démocratique. Où va l'argent public quand il finance les entreprises, quels montants ? Pour quels résultats et avec quelles sanctions et recours si les objectifs affichés ne sont pas atteints, voire trompés ?
Nous en reparlerons la semaine prochaine."
Donc les COP c'est de la politique et il y a des lobbies qui achètent des scientifiques. Ben ça alors, quelle révélation… Merci greenpeace.
Et j'imagine qu'ils font la même chose pour dénoncer les dérives et l'inefficacité des politiques énergétiques sur le photovoltaïque par exemple.
Et aussi qu'ils promeuvent la réduction de la consommation énergétique en top priorité, qu'ils suggèrent de remplacer les chaudières au fioul par des pompes à chaleur, de doubler les routes de pistes cyclables… ah non zut, ça c'est Jancovici qui dit ça, un vilain pro-nucléaire qui ne lance pas les bonnes alertes…
Justement, il faudrait peut-être lister les priorités. La pollution aux particules fines, c'est des dizaines de milliers de morts prématurées par an en France, d'après Santé publique france. Pour l'accident de TMI, les études les plus alarmantes indiquent quelques cas de cancers potentiels.
Perso, la pollution de l'air me semble plus urgent que les centrales, pourtant il n'y a pas de réseau "Sortir des Particules Fines" (enfin presque, mais qui les connait ? https://www.respire-asso.org).
Et alors ? L'industrie nucléaire est un exemple de transparence… mais depuis 2006 seulement ? Et le SCPRI et Areva, c'était exemplaire aussi ou "c'était avant mais maintenant c'est mieux" ?
Perso, je ne supporte pas les discours biaisés de greenpeace ou de SDN mais c'est pas toujours mieux dans le camps d'en face.
C'est l'inverse.
Avec import Data.Text, on peut faire directement pack "foobar".
Alors qu'avec import qualified Data.Text, il faut faire Data.Text.pack "foobar".
Haskell propose aussi d'autres solutions pour éviter les conflits de noms.
Avec import qualified Data.Text as T, on peut faire T.pack "foobar".
Et on peut aussi indiquer spécifiquement ce qu'on veut importer, ou masquer.
Je ne vois vraiment pas le rapport. En pratique, il n'y a quasiment que cabal et stack. Et je crois que stack recommande désormais de passer par un cabal file, et sert essentiellement de snapshot.
nos aines ont "oublie" de nous provisionner l'argent pour démanteler les centrales nucléaires en fin de vie
Ben, non : "EDF précise que les montants provisionnés pour la déconstruction des centrales nucléaires, les derniers cœurs et la gestion à long terme des déchets radioactifs s'élèvent à 22,2 milliards d'euros au 30 juin 2016"
je peux pas garantir que mon code est compatible avec toutes les versions d’une bibliothèque externe
C'est justement pour cela qu'on fait des versions majeures ou mineures. Si chaque logiciel impose des versions précises, il faut installer différentes versions d'une même lib et le principe des distributions n'a plus d'intérêt.
Après c'est un choix, fedora silverblue fait un peu ça : une install de base + les flatpaks qui gèrent leurs dépendances.
la théorie des types, qui n'est qu'une branche parmi d'autres en théorie des langages (juste un peu à la mode sur reddit et quelques forums, en partie grâce à Rust).
Perso, c'est peut-être le principal avantage que je trouve à Rust. Mais bon ça casse pas 3 pattes à un canard non plus. Rust supporte les types algébriques et les type-classes mais il n'y a pas de HKT comme en Haskell ni de module comme en OCaml.
# une version en haskell
Posté par nokomprendo (site web personnel) . En réponse au journal Java : presque 9 000 requêtes par seconde avec 8 Mo de RAM. Évalué à 5.
compilation/exécution:
benchmark (AMD Ryzen 7 PRO 4750U, 1.7GHz) :
[^] # Re: guix vs nix et nixos
Posté par nokomprendo (site web personnel) . En réponse à la dépêche GNU Guix 1.3.0 est publié. Évalué à 4.
Pour préciser : ce journal présente juste les commandes de base, avec les deux systèmes, mais ne donne pas d'avis. Pour un usage "basique", les deux systèmes se ressemblent effectivement beaucoup mais dans le détail, ils ont chacun leur intérêt.
Perso je connais très peu Guix; je reste sur NixOS car l'habitude, l'intégration de Haskell, et les paquets un peu plus nombreux.
[^] # Re: les cas nix/guix/pkgsrc
Posté par nokomprendo (site web personnel) . En réponse au journal Fedora Silverblue sur un mini laptop. Évalué à 3.
Ok, merci pour l'info.
Si jamais tu testes nixos, n'hésite pas à en faire aussi un retour dans un journal. ;-)
Perso, je jette un oeil à silverblue de temps en temps mais pour l'instant je vois pas trop ce qu'il peut m'apporter de mieux pour mon usage.
# les cas nix/guix/pkgsrc
Posté par nokomprendo (site web personnel) . En réponse au journal Fedora Silverblue sur un mini laptop. Évalué à 4.
Merci pour ce retour intéressant.
Pour Nix, il y a aussi une intallation "système", qui nécessite juste
/nix
et un service. Mais je ne sais pas si c'est utilisable sur silverblue.D'ailleurs, pourquoi ne pas installer NixOS directement, j'ai l'impression que ça répondrait à certains de tes problèmes ?
[^] # Re: et avec les fold-expressions ?
Posté par nokomprendo (site web personnel) . En réponse au journal Constexpr versus template. Évalué à 2.
Ah oui c'est possible, j'ai pas trop réfléchi en fait, désolé…
# et avec les fold-expressions ?
Posté par nokomprendo (site web personnel) . En réponse au journal Constexpr versus template. Évalué à 4.
depuis c++17, on a les fold-expressions aussi:
Et il me semble que les templates font de la mémoization donc s'il y a beaucoup d'appels différents, ça peut changer les choses.
Par contre le constexpr a l'avantage de pouvoir être appelé au runtime aussi, je crois.
[^] # Re: traitements
Posté par nokomprendo (site web personnel) . En réponse au lien Brevets sur les vaccins: "Ouvrez la production du vaccin au reste du monde". Évalué à 3.
Heu tu es gentil mais je ne suis pas en train de me défendre devant le tribunal. Je dis juste que les vilains big pharma subventionnés par les gouvernements, c'est pas tout à fait la vérité. Mais comme d'habitude, c'est juste impossible d'avoir une discussion posée sur ce genre de sujet, il faut toujours que ça tombe dans des extrêmes.
Allez salut.
[^] # Re: traitements
Posté par nokomprendo (site web personnel) . En réponse au lien Brevets sur les vaccins: "Ouvrez la production du vaccin au reste du monde". Évalué à 2.
Ah oui effectivement.
Sauf que ton article mélange les subventions avec les promesses de commandes,
https://fr.wikipedia.org/wiki/Op%C3%A9ration_Warp_Speed :
https://www.lci.fr/sante/covid-19-le-vaccin-de-pfizer-et-biontech-a-t-il-ete-developpe-avec-des-fonds-publics-comme-le-pretend-alexis-corbiere-2169516.html :
[^] # Re: traitements
Posté par nokomprendo (site web personnel) . En réponse au lien Brevets sur les vaccins: "Ouvrez la production du vaccin au reste du monde". Évalué à 0.
D'après cet article, il y eu des dizaines de projets de vaccin. Donc oui les 3 ou 4 vaccins qui ont abouti vont certainement rapporter des milliards. Et les dizaines qui ont échoué ?
https://www.liberation.fr/apps/2020/07/les-vaccins-en-developpement/
[^] # Re: Mucchielli n’est pas une bonne source d’information
Posté par nokomprendo (site web personnel) . En réponse au lien Comment l'industrie pharmaceutique s'enrichit sur le dos des Etats et de leurs citoyens. Évalué à 4.
En l’occurrence, l'article est de "La rédaction" donc si c'est Mucchielli "qui dirige", c'est un peu son article aussi.
Enfin non, parce qu'en fait c'est du copier-coller du résumé de l'éditeur : https://www.raisonsdagir-editions.org/catalogue/la-sante-hors-de-prix-laffaire-sovaldi/
# vivement la semaine prochaine...
Posté par nokomprendo (site web personnel) . En réponse au lien A méditer en remplissant votre rapport pour le Crédit Impôt Recherche. Évalué à 4.
"L'enjeu est aussi démocratique. Où va l'argent public quand il finance les entreprises, quels montants ? Pour quels résultats et avec quelles sanctions et recours si les objectifs affichés ne sont pas atteints, voire trompés ?
Nous en reparlerons la semaine prochaine."
[^] # Re: ça a influencé EDF
Posté par nokomprendo (site web personnel) . En réponse au lien 1979, la centrale nucléaire de Three Mile Island aux USA, un aperçu de l’enfer - podcast franceinter. Évalué à 2.
Donc les COP c'est de la politique et il y a des lobbies qui achètent des scientifiques. Ben ça alors, quelle révélation… Merci greenpeace.
Et j'imagine qu'ils font la même chose pour dénoncer les dérives et l'inefficacité des politiques énergétiques sur le photovoltaïque par exemple.
Et aussi qu'ils promeuvent la réduction de la consommation énergétique en top priorité, qu'ils suggèrent de remplacer les chaudières au fioul par des pompes à chaleur, de doubler les routes de pistes cyclables… ah non zut, ça c'est Jancovici qui dit ça, un vilain pro-nucléaire qui ne lance pas les bonnes alertes…
[^] # Re: ça a influencé EDF
Posté par nokomprendo (site web personnel) . En réponse au lien 1979, la centrale nucléaire de Three Mile Island aux USA, un aperçu de l’enfer - podcast franceinter. Évalué à 2.
Justement, il faudrait peut-être lister les priorités. La pollution aux particules fines, c'est des dizaines de milliers de morts prématurées par an en France, d'après Santé publique france. Pour l'accident de TMI, les études les plus alarmantes indiquent quelques cas de cancers potentiels.
Perso, la pollution de l'air me semble plus urgent que les centrales, pourtant il n'y a pas de réseau "Sortir des Particules Fines" (enfin presque, mais qui les connait ? https://www.respire-asso.org).
[^] # Re: ça a influencé EDF
Posté par nokomprendo (site web personnel) . En réponse au lien 1979, la centrale nucléaire de Three Mile Island aux USA, un aperçu de l’enfer - podcast franceinter. Évalué à 2.
Et alors ? L'industrie nucléaire est un exemple de transparence… mais depuis 2006 seulement ? Et le SCPRI et Areva, c'était exemplaire aussi ou "c'était avant mais maintenant c'est mieux" ?
Perso, je ne supporte pas les discours biaisés de greenpeace ou de SDN mais c'est pas toujours mieux dans le camps d'en face.
[^] # Re: ça a influencé EDF
Posté par nokomprendo (site web personnel) . En réponse au lien 1979, la centrale nucléaire de Three Mile Island aux USA, un aperçu de l’enfer - podcast franceinter. Évalué à 4.
D'ailleurs c'est tellement transparent que quasiment personne n'a vu passer les deux accidents avec fusion de coeur de Saint-Laurent-des-Eaux.
https://fr.wikipedia.org/wiki/Centrale_nucl%C3%A9aire_de_Saint-Laurent-des-Eaux#Accidents_nucl%C3%A9aires
[^] # Re: ImportQualifiedPost
Posté par nokomprendo (site web personnel) . En réponse à la dépêche GHC 8.8, 8.10 et 9.0. Évalué à 2. Dernière modification le 16 mars 2021 à 17:40.
C'est l'inverse.
Avec
import Data.Text
, on peut faire directementpack "foobar"
.Alors qu'avec
import qualified Data.Text
, il faut faireData.Text.pack "foobar"
.Haskell propose aussi d'autres solutions pour éviter les conflits de noms.
Avec
import qualified Data.Text as T
, on peut faireT.pack "foobar"
.Et on peut aussi indiquer spécifiquement ce qu'on veut importer, ou masquer.
[^] # Re: ImportQualifiedPost
Posté par nokomprendo (site web personnel) . En réponse à la dépêche GHC 8.8, 8.10 et 9.0. Évalué à 2.
L'avantage est de gagner un peu de place et de cohérence entre les différents types d'imports.
avant on faisait :
maintenant on peut faire :
[^] # Re: Superbe article, bravo
Posté par nokomprendo (site web personnel) . En réponse à la dépêche GHC 8.8, 8.10 et 9.0. Évalué à 2.
Je ne vois vraiment pas le rapport. En pratique, il n'y a quasiment que cabal et stack. Et je crois que stack recommande désormais de passer par un cabal file, et sert essentiellement de snapshot.
[^] # Re: tl;dr
Posté par nokomprendo (site web personnel) . En réponse au lien Non, le nucléaire n’est pas un investissement durable selon les critères de l’Union européenne. Évalué à 8.
Ben, non : "EDF précise que les montants provisionnés pour la déconstruction des centrales nucléaires, les derniers cœurs et la gestion à long terme des déchets radioactifs s'élèvent à 22,2 milliards d'euros au 30 juin 2016"
https://fr.wikipedia.org/wiki/D%C3%A9mant%C3%A8lement_nucl%C3%A9aire#France
[^] # Re: tl;dr
Posté par nokomprendo (site web personnel) . En réponse au lien Non, le nucléaire n’est pas un investissement durable selon les critères de l’Union européenne. Évalué à 6.
Ben, non : "excavation des fondations sur une profondeur minimale de 1 mètre"
[^] # Re: Plus
Posté par nokomprendo (site web personnel) . En réponse au lien Appel à soutien de projet : reconstituer en Europe une forêt primaire - france inter. Évalué à 4.
Ben peut-être qu'on pourrait aussi réduire la consommation de nutella et de viande rouge, pour arrêter de détruire celle des autres.
[^] # Re: Pinning
Posté par nokomprendo (site web personnel) . En réponse au lien Le cauchemar de l'empaquetage: côté distrib. Évalué à 7. Dernière modification le 23 février 2021 à 23:37.
C'est justement pour cela qu'on fait des versions majeures ou mineures. Si chaque logiciel impose des versions précises, il faut installer différentes versions d'une même lib et le principe des distributions n'a plus d'intérêt.
Après c'est un choix, fedora silverblue fait un peu ça : une install de base + les flatpaks qui gèrent leurs dépendances.
En quoi le C est-il obsolète ?
# LLVM
Posté par nokomprendo (site web personnel) . En réponse au journal Découvrir Docker, Python, LLVM et Emscripten. Évalué à 5.
C'est aussi la license BSD et les front-ends pour plein de langages
[^] # Re: Docker, faux problèmes
Posté par nokomprendo (site web personnel) . En réponse au journal Découvrir Docker, Python, LLVM et Emscripten. Évalué à 5.
ou encore nix
[^] # Re: Pourquoi Rust ?
Posté par nokomprendo (site web personnel) . En réponse au lien Rewrite it in Rust : au delà du meme (Google finance la réécriture en Rust de certains logiciels lib. Évalué à 2.
Perso, c'est peut-être le principal avantage que je trouve à Rust. Mais bon ça casse pas 3 pattes à un canard non plus. Rust supporte les types algébriques et les type-classes mais il n'y a pas de HKT comme en Haskell ni de module comme en OCaml.