09:45 <feth> matin
09:45 <feth> matrixise: matin, vu ton CfP -il est très bien :)
09:45 <feth> est-ce que tu en fais une version G+ ? (si possible dans la communauté Python Fr)
09:46 <feth> (vu qu'il est écrit à la première personne du pluriel, autant qu'il soit pushé par un orga)
09:46 <feth> et sinon, ça me semble recopiable tel quel sur linuxfr
09:50 <gawel> matin paté
10:03 <haypo> rilette dès le réveil ? dur dur :)
10:31 <Hobbestigrou> salut
10:31 <No`> salut l'afpy
11:16 <gawel> y a un beau troll, la, pour un lundi
11:17 <NelleV> c'est clair.
11:18 <feth> perso je pense que le web c'est dépassé
11:18 <feth> euh pardon, que le web est deprecated
11:53 <benoitc> feth: ted nelson serait avec d'accord avec toi
11:53 <benoitc> meme si il l'est depuis les annees 60 de l'autre siecle
11:55 <benoitc> http://ted.hyperland.com/buyin.txt
12:01 <feth> benoitc: en fait je cherchais surtout à dire une phrase avec un mot anglais
12:01 <feth> ça m'agace le franglais quand il n'est pas justifié, surtout quand il est mauvais :)
12:04 <gawel> benoitc: que nodejs soit* Un autre café ? :D
12:05 <benoitc> je penchais un pour quelque chose de plus fort
12:05 <benoitc> j'ai un peu 3h de sommeil en 2 jours
12:05 <gawel> hou c'est pas beaucoup ça
12:05 <benoitc> feth: et sinon deprecated cela ne signifie pas depasse
12:06 <benoitc> c'est meme complique a retranscrire en un mot
12:06 <NelleV> c'est "deprecié" en français
12:06 <NelleV> (c'est vraiment moche par ailleurs)
12:06 <benoitc> oui et non
12:06 <benoitc> deprecated = to criticize or express disapproval of (someone or something)
12:06 <feth> NelleV: +√1
12:07 <feth> benoitc: c'est exactement déprécier
12:07 <benoitc> http://www.merriam-webster.com/dictionary/deprecated
12:07 <NelleV> perso, je propose d'éradiquer la langue française. Ca simpliferait pas mal de chose...
12:07 <benoitc> feth: non déprecier = 1 Baisser la valeur de
12:07 <benoitc> en anglais to undervalue
12:07 <benoitc> bref
12:08 <feth> NelleV: faudrait encore que les gens parlent correctement autre chose. Perso j'aime bien la phrase d'Eco "la langue de l'Europe est la traduction".
12:08 <feth> Ça serait mieux de parler proprement plusieurs langues
12:09 <benoitc> mouai je suis generalement plus interesse par la teneur d'un message que sa correction. sinon tu ne t'en sort pas
12:09 <feth> dans ce cas-là je te conseille le RDF
12:10 <benoitc> ou tu consideres qu'un malien parlant le francais d'il ya 60 ans (donc avant certains changements) ne parle pas francais
12:10 <benoitc> ou qu'un indien ne parle pas correctement anglais
12:10 <feth> un malien et un suisse ne parlent pas le même français, et c'est super :)
12:10 <feth> même un alsacien ne parle pas le même français qu'un toulousain
12:10 <benoitc> RDF?
12:11 <benoitc> et bon, et la je parle pour moi, j'ai du ma a trouver les mots techniques en francais parfois, ne bossant pas avec des francais de maniere reguliere
12:11 <feth> Si vraiment seuls le contenu est important, le mieux serait de passer à OWL en fait :)
12:11 <NelleV> d'ailleurs, je propose d'aller chercher une chocolatine...
12:12 <benoitc> tu veux dire un croissant au chocolat?
12:13 <benoitc> (ceci dit les anglais avec leur chocolate croissant sont ceux qui ont le terme le plus proche de la realite. un pain au chocolat c'est la pate du croissant avec du chocolat...)
12:13 <feth> benoitc: je pense qu'il y a des concepts très difficiles à traduire, justement parce que les langues permettent de penser avec des angles différents
12:14 <feth> c'est pour ça qu'il y a plein de mots allemands en géographie et en philo
12:14 <feth> (et c'est cool)
12:14 <benoitc> feth: la encore tu confonds la forme et le contenu. rdf et owl sont des moyens de normaliser un contenu, pas le contenu.
12:14 <feth> Je trouve juste que dire "je n'achète pas ... blabla" au lieu de dire "je n'adhère pas", ou dire "meetup" au lieu de "rencontre" c'est un peu ridicule
12:15 <benoitc> comme wiederspruchgeist qui est tres mal traduit par esprit de contradiction
12:15 <feth> benoitc: Exactement. Enfin, j'aimerais te contredire ;)
12:15 <feth> j'ai marché là, ça va fermer
15:02 <alain_afpy> - membres: FAILURE 502 Proxy Error
15:05 <alain_afpy> - membres: FIXED
16:07 <haypo> feth: question franglais : "faux" s'utilise en anglais ou pas ?
16:08 <No`> as in "faux-texte", oui
16:08 <feth> faux nez
16:08 <feth> phoney
16:08 <haypo> j'ai vu ça "faux" dans du tests unitaires écrits par des français, ça m'a choqué, j'ai remplacé par "fake"
16:08 <haypo> mon patch a été accepté
16:13 <haypo> benoitc: je n'ai pas compris ta remarque sur "yield from est impossible à déboguer". j'ai fait un mini test, j'ai la traceback à laquelle je m'attends : http://pastealacon.com/33540
16:13 <haypo> benoitc: avec Twisted (ou autre système par callback), tu aurais juste step3() dans la traceback
16:14 <haypo> benoitc: mais je n'ai pas testé asyncio, j'sais pas quel genre de traceback ça donne
16:14 <benoitc> ou ais je dit que cela etait impossible?
16:14 <benoitc> je parle de remonter et faire quelque chose de l'erreur
16:14 <haypo> "Pour la facilite a debugger tu repasseras, c’est aussi facile a debugger que n’importe quelle système reposant sur une eventloop et utilisant un système de callback pour recuperer de manière asynchrone un résultat. Bref autant dire un enfer. "
16:14 <benoitc> oui
16:15 <benoitc> donc j'ai pas dit impossible
16:15 <benoitc> j'ai dit difficile
16:15 <haypo> ah, y'a pas pire que l'enfer ?
16:15 <benoitc> sur un callbackhell
16:15 <haypo> oups
16:15 <haypo> ah, y'a pire que l'enfer ?
16:15 <benoitc> oui qu'il n'y ait pas d'enfer
16:15 <benoitc> et que tu ne tombes jamais plus bas
16:15 <benoitc> un callbackhell
16:15 <haypo> benoitc: asyncio conseille plutôt yield from que les callbacks non ?
16:16 <benoitc> so je suis la
16:16 <benoitc> callback(callback(calllback(callback(callback(callback( except ))))))
16:16 <benoitc> youpi
16:16 <haypo> benoitc: tu parles d'asyncio là ?
16:16 <benoitc> je parle des callbacks
16:17 <benoitc> et d'asyncio par extension quand tu utilises trop d'appels imbriques
16:17 <benoitc> (comme dans twisted)
16:17 <haypo> je n'ai pas compris. quand tu parles d'enfer, tu parles juste de système de callback à tiroir genre twisted ? ou aussi de tulip/asyncio ?
16:17 <benoitc> callback a tiroir
16:17 <haypo> ah ok
16:18 <benoitc> asyncio c juste un twsited modernise anyway
16:18 <haypo> "juste" bah yield from permet de conserver une traceback cohérente, ce n'est pas rien
16:18 <benoitc> ya pas grand chose qui change a part l'utilisation de yield en python , mais sinon pour tt ce qui est bloquant c le meme principe
16:19 <haypo> yield peut être utilisé avec Twisted et @inlineCallbacks
16:19 <benoitc> haypo: tant que tu imbriques pas trop les appels cela va pour savoir ce qui a reellement plante
16:19 <haypo> mais en interne, twisted utilise encore sûrement des callbacks vu que twisted est basé sur Deferred
16:20 <benoitc> c deja suffisamment complique de trouver une race conditions sur un systeme sans callback pour rajouter des callbacks au dessus par ex
16:20 <haypo> benoitc: j'ai l'impression que tu mets asyncio & twisted dans le même sac. je trouve qu'il est bien gros ton sac :) yield from est une sacré différence
16:22 <benoitc> ca reste des callbacks dans ta loop hein
16:22 <benoitc> que tu from ou pas
16:23 <haypo> bon, si tu le dis. comme je n'ai jamais utilisé asyncio, je préfère me taire
16:23 <haypo> benoitc: merci pour tes éclaircissements :)
16:27 <haypo> en même temps, asyncio n'a toujours pas de doc...
16:27 <benoitc> haypo: ya juste la spec oui
16:27 <haypo> benoitc: bah l'implémentation a été mergée dans python 3.4
16:28 <haypo> guido a promis une doc avant python 3.4 version finale :)
16:28 <benoitc> oui mais la doc link juste la pep
16:28 <benoitc> enfin la 3.4.0a
16:28 <haypo> bah http://docs.python.org/dev/library/asyncio.html fait une erreur 404 :)
16:29 <benoitc> perso je suis en train d'ecrire un worker qui l'utilise et je crois que je prefere l'api de tornado qq part
16:29 <benoitc> https://python.readthedocs.org/en/latest/whatsnew/3.4.html#asyncio
16:29 <benoitc> oh
16:29 <benoitc> mmm je suis tombe comment sur readthedoc moi ...
16:30 <haypo> benoitc: tiens, j'savais pas qu'il existait une doc sur rtfd :)
16:30 <benoitc> moi non plus avant de voir ce que j'avais bookmarke ...
16:55 <jon1012> tiens pour le troll micro python, le mec a fait une entrée de faq sur pymite http://www.kickstarter.com/projects/214379695/micro-python-python-for-microcontrollers
16:55 <jon1012> c'est assez technique :)
16:57 <haypo> " Allocating heap memory is usually a large performance penalty, and consumes RAM, a scare resource on a microcontroller." j'comprends pas, utiliser de la mémoire utilise de la mémoire ?
16:57 <haypo> jon1012: c'est lent la mémoire heap ?
16:57 <jon1012> bah, pas tant que ca, mais j('imagine que c'est le fait d'allouer de la memoire qui est lent selon lui
16:57 <jon1012> (genre tu fais pas ton addition en une instruction tu en prends bcp plus)
16:58 <haypo> un signal handler en Python préemptible, c'est balèze par contre :)
16:58 <haypo> dans CPython, le signel handler est codé en C, le handler Python est appelé dès que possible
17:01 <haypo> et puis, malloc() peut être appelé sans appeler le garbage collector
17:01 <jon1012> ouaip, et de memoire je crois que pymite est optimisé de ce coté là...
17:02 <jon1012> en fait de ce que je comprend, il veut pouvoir faire du code aussi optimisé que du c de base mais avec la syntaxe python
17:02 <jon1012> et donc ce n'est plus du vrai python mais un "micro python"
17:06 <haypo> "In PyMite (and CPython if I'm not mistaken), most integer operations, even a simple addition, require heap allocation." hé non
17:06 <haypo> il ne connait pas trop son sujet le mec
17:06 <haypo> c'est prétencieux de penser arriver à faire mieux :-(
17:06 <haypo> 15 k£ ça va pas aider s'il n'y a pas un minimum de connaissance sur l'existant
17:07 <rguillebert> euh, tes Py_IntObject ils sont alloué où ?
17:08 <haypo> rguillebert: 1+1 n'alloue pas de mémoire, les entiers [-5; 256] sont des singletons :)
17:09 <rguillebert> c'est pour ça qu'il dit "most" non ?
17:10 <haypo> rguillebert: y'a une "free list" aussi des derniers objets "int" utilisés (dans python 2, plus dans python 3)
17:10 <haypo> ça évite pas mal d'appels à l'allocateur mémoire
17:10 <feth> non mais allo quoiteur
17:11 <rguillebert> mais si tu fais i += 1 un million de fois et que i part de 0
17:11 <miniwark> j'avoue que sa carte me tente, mais j'ai été échaudé par la pyMCU... là je fait des bidouilles python+arduino (il y a plein de librairies) ... par contre pour son MicroPython, tant qu'a faire du "compilable" peut-être qu'il aurais du choisir Cobra Ou nimrod (ou autres Python likes)
17:11 <rguillebert> tu vas avoir une tonne de truc alloué sur la pile
17:11 <rguillebert> ouai ce qui me gène perso c'est la compilation
17:11 <haypo> rguillebert: qu'est-ce qui est alloué sur la pile ?
17:12 <rguillebert> ah ça réutilise les IntObjects non utilisés avec de nouvelles valeurs ?
17:12 <haypo> rguillebert: si CPython doit allouer des PyIntObject, il les alloue sur le tas (heap). si tu fais x=0; for i in xrange(10**8): x+=i; tu vas allouer 2 ou 3 PyIntObject, grâce à la freelist
17:12 <rguillebert> ouai ok
17:13 <haypo> (par contre, il ne faut jamais écrire range(10**8) avec Python 2, la free list n'est pas limitée, la mémoire n'est jamais rendue, c'est nul)
17:13 <haypo> rguillebert: pareil pour les PyFrameObject : "So, we needed to allocate heap memory just to do a method call!" est inexact
17:13 <haypo> (ça se dit "inexact", c'est faux quoi :-))
17:14 <rguillebert> d'ailleurs pourquoi range ne retourne pas un truc qui se comporte exactement comme une liste mais n'est pas une liste ?
17:14 <haypo> perso je doute que l'allocateur mémoire soit le point noir, c'est plutôt la boucle d'évaluation du bytecode
17:14 <rguillebert> (comme PyPy)
17:14 <haypo> et là, CPython utilise des "computed goto" plus efficace qu'un très long switch, et je pense que Micro Python va utiliser un très long switch
17:14 <haypo> rguillebert: pour des questions historiques (rétro compatibilité)
17:15 <haypo> rguillebert: c'est corrigé dans Python 3
17:15 <rguillebert> non mais dans PyPy python 2 on a un truc qui se comporte exactement comme une liste
17:15 <rguillebert> mais n'alloue rien
17:16 <haypo> rguillebert: range() peut être utilisé en dehors d'une boucle. x=range(10); print(type(x)) doit donner list
17:16 <rguillebert> oui
17:16 <rguillebert> et ça le fait
17:17 <haypo> rguillebert: bah je pense que personne n'a proposé l'idée et personne n'en voyait le besoin :)
17:17 <haypo> mieux vaut corriger le code source ?
17:17 <rguillebert> ah mais dans PyPy on peut avoir un type Python qui a plusieurs type RPython
17:18 <haypo> rguillebert: tu n'as pas ce genre de facilité dans CPython
17:18 <rguillebert> ah ok
17:19 <haypo> jon1012: le truc de stocker les int sous forme de pointeur, PyPy a une option de compilation pour ça. je crois que ce n'est pas utilisé dans PyPy. ça a aussi un coup pour recréer un objet int classique à la demande je suppose
17:19 <jon1012> haypo, mouais, j'ai un doute
17:19 <rguillebert> c'est surtout qu'on y gagne rien en fait
17:19 <jon1012> haypo, par contre le mcu qu'il utilise a un fpu et un dsp qui doivent accelerer ce genre d'opération
17:20 <jon1012> c'est le meme que celui que j'ai utilisé pour ma démo pymite au pycon y'a deux ans
17:20 <jon1012> (enfin un an et qque)
17:20 <haypo> jon1012: ça avait été évoqué dans CPython, mais pour CPython, ça demande de réécrire 100% du code C pour gérer cette optimisation
17:20 <rguillebert> la seule raison pour laquelle ça à été implémenté, c'était pour prouver que ça servait a rien
17:20 <haypo> rguillebert: arf :)
17:21 <rguillebert> tu dois faire un check sur le pointeur à chaque fois que tu le manipule
17:21 <haypo> jon1012: quel genre d'opération ?
17:21 <gawel> ça fait plaisir de voir que je suis pas le seul a faire des trucs bien qui servent à rien
17:21 <haypo> gawel: haha, t'inquiète pas
17:21 <haypo> ça part d'une bonne idée Micro Python : éviter les erreurs qu'ont fait les autres
17:22 <haypo> sauf que le mec ne connait pas bien CPython, PyPy et PyMite à mon avis
17:22 <haypo> jon1012: il compte l'allouer où sa mémoire si c'est pas sur le tas ni la RAM ??
17:22 <jon1012> haypo, aucune idée :)
17:24 <jon1012> haypo, peut etre que si c'est du compilé, il veut le mettre en dur dans le compilé
17:25 <rguillebert> j'ai aussi hâte de voir si pdb fonctionnera :)
17:26 <haypo> rguillebert: perso je trouve ça dingue que pdb fonctionne, c'est inception ce truc. à chaque instruction python, tu peux appeler du code python avant/après l'instruction
17:26 <haypo> j'ai jamais compris si le traceur peut être tracé
17:27 <rguillebert> :)
17:27 <rguillebert> mais faut aussi avoir des frame objects
17:27 <rguillebert> et si tu compile...
17:30 <haypo> rguillebert: ah; bah pas grave si y'a pas pdb
17:30 <haypo> c'est micro hein, faut pas être trop exigeant sur un micro controlleur
17:30 <rguillebert> c'est vrai que tu peux virer le décorateur
17:35 <rguillebert> mais ça pose quand même la question de ce que l'on appelle vraiment Python
17:35 <jon1012> pymite se rapproche plus de python que son truc
17:35 <jon1012> mais bon, après chacun ses idées, et s'il réussit tant mieux
17:36 <haypo> jon1012: je n'ai pas de doute qu'il réussisse (s'il a suffisamment de temps)
17:37 <jon1012> haypo, ouais, mais avec 15000 livres tu finance pas une réimplementation de python
17:37 <jon1012> haypo, et le mec doit vivre aussi
17:37 <jon1012> haypo, surtout que sur les 15000 livres y'en a une partie pour la fab des cartes et leur exped
17:49 <rguillebert> haypo, t'en a déjà entendu parler de ce gars ?
17:49 <haypo> rguillebert: jon1012 m'en parle sans arrêt !
17:49 <haypo> ça doit être une star
17:50 <rguillebert> enfin genre sur les mailing lists cpython
17:50 <haypo> rguillebert: nan, jamais vu sur python-dev
17:51 <rguillebert> ouai donc bon, réimplémenter python sans avoir jamais contribuer à une de ces implémentations...
17:51 <haypo> rguillebert: c'est ce que je dis :)
17:52 <haypo> maintenant nous on râle, mais le mec a récolté +27.000€ en quelques jours avec 2 ou 3 photos et un peu de blabla
17:55 <rguillebert> c'est plus que ce qu'on à récolter pour STM...
17:56 <haypo> rguillebert: vous êtes nuls, vous avez tout à apprendre de ce mec ;)
17:56 <rguillebert> mais trop :s
17:58 <rguillebert> faut vraiment qu'on trouve un moyen légal de se mettre sur kickstarter
18:19 <jon1012> haypo, sans arret tss :p
18:21 <benoitc> rguillebert: maintenant si il etait sur les ml de dev de cpython ptete qu'il n'aurait pas l'idee de faire son implen
18:21 <benoitc> implem
23:20 <jon1012> feth, pas compris
23:21 <feth> jon1012: tu as eu le pdf ?
23:21 <jon1012> feth, heu ouais
23:22 <feth> ça parle du chalutage profond
23:22 <feth> le gars qui m'a envoyé ça dit que la BD est un bidonnage qui lui donne envie d'arrêter l'écologie
23:30 <jon1012> feth, bizarre, en general penelope relaie que des trucs assez reglo
23:32 <feth> moi je n'ai pas d'expertise là-dedans, mais je vois juste que c'est pas toujours si évident
23:34 <feth> jon1012: je prétends pas que Ouest France dit la vérité hein
23:43 <jon1012> feth, ils parlent pas de la raison pour laquelle ils ont besoin de ces poissons à la con
23:48 <jon1012> fin bon
23:48 <jon1012> heure du dodo, bonne nuit :)