En vous inscrivant, vous acceptez les conditions d'utilisation du site et de nous vendre votre âme pour un euro symbolique. Amusez vous, mais pliez vous à la charte.
(19h59)MrPapillon Et s'il y a un nouveau langage, faut pas oublier qu'il y aura aussi certainement la possibilité d'avoir une compat' avec des libs externes en C++. L'un n'empêche pas forcément l'autre.
(19h57)MrPapillon En fait c'est presque plus un jour férié, mais la journée du troll presque. Vous m'avez englué dans vos machins là. La dernière fois que je mets un pied dans du sable mouvant de la tribune.
(19h56)MrPapillon *qu'il faut demander.
(19h55)MrPapillon C'est à eux de demander si le portage a été fait dans la douleur ou pas.
(19h55)MrPapillon Maintenant faut pas oublier que la tâche de "portage", c'est pas toi qui l'a faite, mais la boîte qui a fait le middleware.
(19h54)MrPapillon CBL > Bink est une lib pour le jeu vidéo, donc oui effectivement dans le jeu vidéo on essaye d'avoir ce qu'il faut pour les plateformes du jeu vidéo.
(19h54)CBL idem pour Kinect ou pour Chromium
(19h52)CBL C'est un standard de facto
(19h52)CBL J'ai intégré Bink pour UE 4 dans ma boite et je ne me suis meme pas posé la question "mais qu'est-ce qu'ils supportent ?" car je savais d'avance que la reponse serait C++
(19h51)CBL Oui tu dépends pas mal des dev third party mais au moins le support du C++ est universel
(19h48)MrPapillon Alors si tu te reposes sur des tonnes de libs, ça peut devenir emmerdant.
(19h48)MrPapillon Une lib buildée sur un OS précis, en général tu te décourages assez vite d'essayer de la porter toi-même sous un autre OS avec un autre compilo.
(19h47)MrPapillon CBL > Ce n'est qu'un avantage sur les langages déjà existants. La compatibilité entre OS est en fait terrible dans les faits.
(19h46)MrPapillon Ttask> Les callstacks dans la STL sont immondes. Les sources sont illisibles. Certes on pige, mais avec une classe custom équivalente qui fait quelques centaines de lignes, ça change tout.
(19h45)CBL et de pouvoir le compiler pour de multiples OS/architectures
(19h44)MrPapillon CBL : Plus tu codes dans le jeu vidéo et moins t'as besoin de voir le code des autres, tu finis par te limiter à des algos ou des articles abstraits.
(19h44)CBL Quand je choppe un SDK, je suis quasiment sur de pouvoir taper dedans en C++
(19h44)MrPapillon Mais si tu essayes de me faire une pirouette, je n'ai jamais dit que Rust était un langage pour le jeu.
(19h43)CBL divide > (10h40) c'est aussi pour cela que j'aime le C++. Certes c'est pas parfait mais la communauté est immense
(19h43)MrPapillon divide > Non aucun, et rien de prévu à l'horizon.
(19h43)MrPapillon Ttask > Allocateurs : c'est assez bien détaillé ici : [open-std.org] Comportements non voulus : tu ne gères pas la politique d'alloc' et vu que t'as pas d'état desus, tu peux pas compenser.
(19h41)divide (et je ne parle pas d'experimentations indie 2d...)
(19h40)divide Sinon, ya des jeux programmés en Rust qui sont sortis ?
(19h25)Ttask Tu dramatises un peu... J'ai sorti 3 AAAs qui utilisent l'implémentation STL standard, aucun problème pour mettre mes propres allocateurs. Pour les comportements non voulus ou les problèmes de debug, je ne vois pas à quoi tu fais allusion.
(19h20)MrPapillon (sans parler du gros bordel au niveau des allocateurs customs)
(19h15)MrPapillon Ttask > En faisant sa propre implémentation oui. Je remets pas en cause les containers (quoique, les iterators...), mais les détails et concepts d'implémentations. Les implémentations classiques sont une plaie : debug horrible, comportements non voulus
(19h11)Ttask MrPapillon > Euh, si, c'est possible d'utiliser la STL pour du jeu, AAA inclus. Mais ça demande une bonne compréhension de la part des programmeurs. Si c'est pour mettre des listes chainées partout, STL ou pas, t'es un peu dans la merde...
(19h11)CBL Unreal a aussi sa "propre" STL qui corrige pas mal de soucis (promis j'arrete de vous saouler avec UE)
(19h08)MrPapillon Le vertueux > à la japonaise.
(19h06)MrPapillon Pourtant il aurait été possible de faire un truc genre "STL2" pour éviter des conflits de noms, ne pas faire péter la rétro-compat', etc... Mais non, le standard s'en tape et une grande partie de la communauté C++ a trouvé des trucs pour éviter.
(19h05)MrPapillon La STL, la lib standard des fonctionnalités de base du C++, prônée par le langage lui-même, repose sur des concepts totalement foireux (avoués par leurs créateurs) et des implémentations nazes indébuggables sur les principales plateformes.
(19h03)MrPapillon Le vertueux > Haha trop facile, impossible à utiliser la STL pour un jeu vidéo, ou alors des jeux tout petit et nazes. La question se pose si tu veux pour des outils mais que tu ne connais pas Qt.
(19h02)Le vertueux MrPapillon > tu dis ça parce que tu n'as plus d'argument, ils t'ont acculé !
(18h56)MrPapillon Enfin je vais m'arrêter là, j'ai trop pourri la tribune.
(18h56)LeGreg Pas obligé d'utiliser la STL pour quoi que ce soit. Dans ma boîte (et dans plein d'autres) c'est une librairie bannie. Et ça ne manque pas tant que ça. En Java et autre ce n'est pas forcément si évident de se passer de certaines features du langage.
(18h55)MrPapillon C'est pour ça que je pense que de petits écosystèmes peuvent être créé chez les indés et servir d'incubateurs.
(18h54)MrPapillon LeGreg, Il manque un vrai écosystème technique puissant dans le jeu vidéo. Mais en même temps c'est pas dans la culture.
(18h52)MrPapillon Autre exemple : EASTL. La STL est vraiment naze. EA s'est vu obligé de proposer une alternative et d'espérer remplacer le standard de cette façon.
(18h51)MrPapillon Donc pour moi le modèle d'évolution de ce langage dessert l'industrie du jeu vidéo.
(18h50)LeGreg plutôt que de faire des montagnes d'imprécation malheureusement il faut que leurs défenseurs s'attaque à une autre montagne qui est celle de créer un écosystème dans leurs domaines respectifs.
(18h50)MrPapillon LeGreg > Le standard ne répond aux problématiques profondes du C++, c'est juste des petits ajouts qui permettent de débloquer certaines contraintes et des micro-features d'ergonomie.
(18h49)MrPapillon LeGreg > Oui mais ce que je veux dire, c'est qu'un seul petit indé dans son coin arrive à me montrer des features en C++ qui me font rêver alors que le standard m'endort depuis 10 ans.
(18h46)Yolteotl Le vertueux > il est roux en plus
(18h46)LeGreg MrPapillon > Je crois que pour les nouveaux langages c'est comme pour tout. La preuve sera dans le cake.
(18h46)MrPapillon LeGreg > Les personnes ne m'intéressent pas. Dans ses vidéos Youtube, il montre des exemples concrets de features, en fait des protos et ça arrive à me surprendre.
(18h45)Le vertueux TUE LE VITE !
(18h45)Le vertueux Yolteotl > Il y a quelqu'un derrière toi !
(18h43)LeGreg Certains devs l'avaient d'ailleurs mis en citation factor dans leurs signatures.. Eg : [permalink.gmane.org]
(18h43)Le vertueux Yolteotl > Tu n'as pas l'air d'un pervers, mais c'est peut être l'effet vignette.
(18h41)LeGreg MrPapillon > Ttask > Jonathan Blow avait tendance à attirer l'attention de manière négative sur certains forums de prog. Ceci dit apparemment il fait des jeux sympas :)
(18h39)Yolteotl Le vertueux > mon PC :p
(18h38)Le vertueux Yolteotl > Il y a un truc à droite hors champs que tu regardes, je me demande ce que c'est.
(18h36)CBL Certes faut recompiler mais au moins tu n'as pas une boite noire qui fait des trucs que tu ignores
(18h35)CBL Perso je prefere avoir tout le code source plutot qu'une DLL
(18h35)Le vertueux Yolteotl > C'est toi le monsieur à lunette ?
(18h35)CBL Unreal a les deux : des DLL pour creer ton jeu et des libs pour le compiler/packager
(18h34)MrPapillon L'include c'était une bonne idée pour les tout petits projets, mais ça scale vraiment pas.
(18h34)thedan sale histoire [jeuxvideo.com] comme quoi kickstarter
(18h33)MrPapillon Bien sûr on peut imaginer une base de code parfaite ultra optimisée pour les temps de compil', mais le constat c'est que 99% des studios n'ont pas ça, et 1% ont l'équivalent d'un code C à la place du C++.
(18h32)MrPapillon Pas de DLL sur PS4. Tout est en libs statiques. Et beaucoup de code dans les .h et beaucoup de templates et beaucoup de temps à compiler et recompiler.
(18h31)Yolteotl Rocket league c'est bien débile : [twitch.tv]
(18h29)CBL Une DLL avec des fonctions exposées, un header et boum ! une api
(18h29)CBL ? C'est magique include
(18h27)MrPapillon Dans chaque fichier C++, on a en haut une feature superpuissante qui s'appelle "include" qui n'est utilisée que dans 0.000001% des cas, mais par contre qui fait chier tout le monde au quotidien, y compris les outils externes.
(18h26)MrPapillon Un truc que j'attends depuis longtemps : les modules et "import". Clang bosse dessus, mais toujours pas de visibilité et ça a été repoussé et repoussé.
(18h25)MrPapillon Auto ne faisait pas partie des problématiques principales d'un développeur de jeux.
(18h24)MrPapillon CBL > Oui, mais ce n'est pas un truc qui change beaucoup. J'utilise aussi pas mal de features : foreach, decltype, etc... Mais y a pas de quoi applaudir, c'est des micro-features et ça existe dans tous les autres langages depuis des décennies.
(18h22)CBL Et les shaders pour Metal sont écrits en C++ 11
(18h22)CBL MrPapillon > UE 4 utilise une bonne partie de C++ 11 (le mot-clé "auto" !)
(18h16)MrPapillon Les lambdas ça vient d'arriver alors que ça aurait pu y a des tonnes d'années déjà, c'est pas un concept inconnu.
(18h15)MrPapillon Alors quand t'as un standard et des experts qui bossent sur le langage depuis des dizaines d'années et qu'on en arrive à n'avoir rien qui puisse intéresser le jeu vidéo ni en C++11, ni en C++14, ni en C++17 ben y a un soucis un peu.
(18h14)MrPapillon Ttask> Blow n'est pas parole d'évangile, mais il a des propositions intéressantes.
(18h14)MrPapillon Ttask > Impur, mais justement tu peux mettre l'allocateur Heap dans l'exception. Tu peux mâter la proposition de Jonathan Blow sur Youtube, avec son système de "capture" généralisé et ça fait sens tout de suite.
(18h13)Ttask Et il faut prendre avec du recul ce que dit John Blow, bien que j'apprécie son enthousiasme. Sur les lambdas par exemple, et leur surcout présumé, il racontait clairement des conneries lues ailleurs, factuellement fausses.
(18h12)Ttask MrPapillon > La pureté dans un langage système est plus complexe à gérer que dans un langage fonctionnel. Allouer une variable temporaire sur la heap, par exemple, c'est pur ou impur ? Mais je suis d'accord que j'aimerais que ça se développe.
(18h12)MrPapillon Dans la base de code sur laquelle je bosse, ça serait un énorme soulagement cette feature. Mais vraiment.
(18h10)MrPapillon J'en reviens à la proposition de Blow : pourquoi on a des connards au standard qui parlent de multithreading depuis des années et on a toujours aucun moyen de forcer une fonction à être pure (et en pouvant spécifier des exceptions).
(18h08)MrPapillon Les types c'est toujours secondaire, même en système, y a qu'à voir les sources de Linux.
(18h08)MrPapillon Quand on regarde les interactions dans le code, on regarde le nom, pas les types.
(18h07)MrPapillon Si le nom avait été avant le type (entre autre), on aurait pû faire passer une moulinette pour formater le style sur toutes les libs et les bases de code existantes, ainsi que d'avoir des trucs automatisés au moment de l'écriture.
(18h06)MrPapillon L'indentation, ça fait chier tout le monde, on a du mal à fournir de vrais outils de style en C++ parce que tout le monde en fait à sa tête.
(18h05)MrPapillon Ttask > Il y a des problèmes très importants en C++ dans l'implémentation, mais c'est pas de ça dont je parlais. Je disais que même dans l'écriture basique, à chaque ligne il y a des concepts foireux.
(18h03)Ttask Il y a clairement de la merde dans C++ (les exceptions, quelle blague), mais je trouve la croisade de ces dernières années un peu excessive alors qu'il y a d'autres problèmes bien plus importants.
(18h02)Ttask MrPapillon > Ouais, enfin si ta problématique c'est l'alignement des noms des variables (et je pourrais soutenir que pour un langage système, le type est plus important que le nom), je pense que ça veut dire qu'on n'est pas en si mauvaise position :).
(17h59)MrPapillon Mais juste qu'il y a des tonnes de problématiques qui ont des réponses.
(17h59)MrPapillon Et encore une fois, je ne dis pas qu'il existe un autre langage parfait, sinon je serais à bosser dessus (avec le peu de dépendances on peut faire des wrappers facilement).
(17h57)MrPapillon Erlang est sur une VM par contre.
(17h57)MrPapillon Ttask > Erlang oui tu peux faire du edit & continue, même que ça a été prévu pour ça.
(17h56)MrPapillon avec du code difficilement lisible pour une fonctionnalité très utile dans certains langages comme le Go.
(17h56)MrPapillon Un exemple : En c++ je ne peux pas patcher un objet (et pas une classe) pour ajouter des fonctionnalités/fonctions dessus. Il y a des design patterns pour ça, ou on peut s'en sortir avec du code très crade. Et au final on se retrouve
(17h54)MrPapillon Et une bonne partie des archis foireuses du C++ et de l'hétérogénéité d'une base de code, c'est parce que des codeurs ont voulu essayer 50 paradigmes et trouver des tonnes des solutions à des problématiques du C++
(17h54)choo.t Ttask > Je ne connaissais pas recode, merci !
(17h52)MrPapillon Des centaines de petits détails, mais quand tu passes à un autre langage et que t'as pas toute cette pénibilité, tu vas super vite.
(17h52)MrPapillon Ttask > Implémentation : La déclaration dans le .h qui sert à rien. L'alignement naze du code à cause du fait que les gars au design ont décidé de mettre le type avant le nom d'une variable/fonction, ...
(17h51)Ttask Si j'avais à choisir entre VAX et Recode, je prendrais Recode, c'est dire à quel point c'est utile. Fort heureusement, aucun studio sensé ne me demandera de faire de choix.
(17h50)Ttask MrPapillon > Demande un trial. Maintenant. Sérieusement, c'est assez idiot de faire du C++ sans ça aujourd'hui. Et tu connais beaucoup de langages dans lesquels l'edit & continue est une feature du langage plutôt que des IDEs ?
(17h49)noir_desir Quelques joueurs jouent un peu à endless legend, je me suis laissé tenté :)
(17h46)MrPapillon Enfin "middleware", là c'est plus un logiciel indépendant.
(17h45)MrPapillon Ttask > Non je crois que tu m'en avais déjà parlé, on n'utilise pas encore. Mais c'est encore un exemple : un middleware pour "simuler" ce qu'aurait été un bon langage.
(17h38)Ttask Quant à la partie implémentation, je ne vois pas pourquoi C++ serait sensiblement moins efficace qu'un autre langage. Maintenance, je suis d'accord, avoir de vieilles bases de code peut être pénible, mais il n'est pas dit qu'un autre langage ferait mieux.
(17h35)Ttask MrPapillon > Vous utilisez Recode là où tu bosses ? Depuis que j'utilise ça (ça fait 2 ans), j'itère bien plus vite que dans n'importe quel autre langage, que ce soit pour des optimisations bas niveau ou pour du code réseau.
(17h24)MrPapillon Taekwondo pourquoi pas.
(17h24)MrPapillon Le vertueux > Rien à foutre des jeux de karaté. On verra quand on sera passé à la VR, je vais peut-être changer d'avis, mais c'est pas gagné.
(17h22)MrPapillon Donc souvent le nez dans le code.
(17h22)MrPapillon Ttask > Jeu vidéo = implémentation + itérations + maintenance sur une base de code très large. Le C++ fonctionne très mal avec les trois. Dans le jeu vidéo on a souvent moins l'aspect specs et conception, on essaye de faire "au mieux".
(17h01)Anarchy Le meilleur jeu de karate c'est UFC 2015
(17h01)Anarchy 'Fin apres ca peut etre placebo parce que je sais que les acteurs sont maries.
(17h00)Anarchy noir_desir > C'est vrai, un des rares medias ou la VF est faite avec effort IMO et que j'puisse supporter. Ca aide aussi que les doubleurs pour Homer et Marge soit marries IRL donc y'as meme une meilleure sincerite des fois dans la VF je trouve
(16h36)Le vertueux C'est nul tout ça, le seul jeu de karaté vraiment amusant c'est Ichigeki : Hagane No Hito.
(16h34)dagon (14h33) noir_desir > LE jeu de karaté : [youtu.be]
(15h58)choo.t Darkigo > Jimmy Olsen a bien bronzé.
(15h45)Darkigo thedan > Bordel ce trailer de supergirl, plus niais tu meurs :/ ca va être con comme The Flash ou Arrow
(15h42)noir_desir Anarchy > je ne l'ai jamais maté en anglais. La vf est bien sympa :)
(15h41)Dragonir (14h35) Laurent > je dirais même plus [youtube.com]
(15h11)Anarchy continuer*
(15h11)Anarchy 'Tin il aurait pas pu prendre son demi million par episode et continue la serie jusqu'a sa mort (la serie pas lui).
(15h10)Anarchy J'fais parties des rares qui continue encore a aimer Simpsons, meme que je pense que ca s'est ameliore ses 2 dernieres saisons. Mais la, la serie va prendre un sale coup dans les dents. J'suis sur que ca va finir par recast mais ca sera jamais pareil.
(15h08)Anarchy Harry Shearer quitte les simpsons, ca veut dire bye bye Ned Flanders, Skinner, Kent Brockman, Burns, Smithers, Lovejoy, Dr. Hibbert, Lenny, Otto, Rainier Wolfcastle et d'autres que j'ai oublie. Edna avait pas eu trop d'effet sur la serie mais la...
(15h01)Le vertueux J’espère que ça ne sera pas les hipster qui seront à l'origine d'une telle mode.
(14h58)Anarchy Oh wow, les hipsters se sont mis au 80s maintenant. J'disais rien sur les vestes en jeans, mais si il se mette a faire des coupes bouffantes et des mullets...
(14h56)Le vertueux noir_desir > Ça ne fonctionne pas chez les filles je trouve. Le mulet c'est pour les hommes.
(14h55)noir_desir Le vertueux > hier je vais dans un bar avec des potes, une nana avait cette coupe là (une jeune hein ^^'). Putain c'est une invasion [chezmaya.com]
(14h54)noir_desir Le vertueux > aucune idée, j'ai juste vu le jeu, sans y jouer.
(14h51)Le vertueux [youtube.com] les animations n'étaient pas si mal pour l'époque. noir_desir > David douillet judo ? C'était plus un jeu de rythme dans mes souvenirs.
(14h49)Le vertueux Il y a du Karate et ça n'est pas si mal, malheureusement le système de défense est médiocre.
(14h49)Le vertueux Laurent > C'est marrant car l'image que tu montres c'est du kendo, pas du karate. Cela dit ce jeu c'est Budokan, j'y jouais quand j'étais petit sur pc, il est sorti sur megadrive également.
(14h41)noir_desir Laurent > je ne sais pas si à cette époque on pouvait parler de simulation...
(14h36)Laurent bizarrement, ça a vite disparu
(14h35)Laurent noir_desir > bien sur que ça a existé : [welovedosgames.net]
(14h33)noir_desir Le vertueux > ca existait un jour des simulations de karaté, j'ai vu une fois un jeu de judo mais karaté je ne crois pas
(14h27)Le vertueux Ce qui me sidère c'est que vous savez coder et pas un seul d'entre vous n'a fait une simu de karate ou un dark souls like, j'aurais tellement honte à votre place !
(14h14)divide (Qt qui n'a pas de version Rust, par ailleurs)
(14h12)divide depuis que j'ai découvert Qt il y a 4 ans je me vois mal coder sans.
(14h12)divide on garde la performance et l'ecosysteme C++ en évitant beaucoup de trucs relous
(14h11)divide surtout que le combo C++ plus Qt accélère énormément le dev
(13h59)Ttask é en ce qui concerne les temps de compilation.
(13h59)Ttask Je doute franchement que pour un langage système, il y ait beaucoup à gagner, except
(13h58)Ttask MrPapillon > A te lire, j'ai l'impression que ton métier c'est d'écrire du code plutôt que de résoudre des problèmes. Le temps passer à écrire du code est pour moi négligeable par rapport au reste (analyse, profiling, architecture, etc).
(13h56)Ttask Yolteotl > Relis ce que j'ai dit : je n'en ai rien à foutre de Java. C'est utile dans certains domaines, mais qui n'ont rien à voir avec ce dont on parle ici.
(13h55)MrPapillon Ttask > Le problème du C++, c'est que beaucoup s'y sont habitués et se rendent pas compte de l'énorme retard et de toutes les horreurs qu'il contient.
(13h54)Yolteotl en J2EE, et donne un devis à ton client; il va bien se foutre de toi. Quand l'utilisation mémoire et les perfs ne sont pas prioritaires, alors le C++ n'est pas une bonne idée.
(13h54)MrPapillon Alors que certains langages te permettent de directement "programmer" le compilateur par le langage et d'en faire ce que tu veux. J'ai même vu Jonathan Blow lancer un space invaders, récupérer le score et l'utiliser au moment de la compil'.
(13h54)Ttask MrPapillon > T'as des exemples précis ? Dans mon boulot, le langage est vraiment anodin en fait. Je pense à ce que je veux que mon CPU fasse, et C++ n'entrave jamais mon chemin.
(13h53)Yolteotl Ttask > Tu veux dire que tu ne peux pas couper un arbre avec une pelle ? Le Java est utile, dans des tas de domaines ou les avantages du C++ sont totalement inutiles. Oui dans le JV tu ne verras pas de Java, mais va faire un back end server en C++ et pas
(13h52)MrPapillon Exemple tout bête : faire un hash sur un string à la compil'. Il a fallu attendre des dizaines d'années avant que ça arrive (et c'est pas encore gagné, Visual 2015 pour Microsoft).
(13h52)MrPapillon Ttask > Et encore une fois le C++ te permet pas de faire ce que tu veux, il y a des millions de choses qui te sont bloqués et que tu t'en rends pas compte.
(13h49)MrPapillon Ttask > C'est débile en tant qu'ingénieur de perdre son temps sur un truc qui peut être automatisé si c'est possible.
(13h46)Nayve J'en viens à me poser cette question quand je lis les feedback des très bonnes perfs de GTA V avec cette carte et que moi je dois faire des sacrifices sur mes réglages (je suis en 1440p ce qui n'aide pas il est vrai)
(13h44)Nayve Question con... est ce qu'une alimentation peut brider une CG ? Dans le sens que j'ai un i7 4770k, une GTX 970 mais qu'une alim 400WAlors certes tout fonctionne mais je me demande si la CG pourrait ne pas pomper tout ce qu'elle peut car alim faible...
(13h44)Ttask Mais si je vais me spécialiser dans un domaine (au hasard, le jeu vidéo) et que je vais bosser sur des projets qui durent des années, ces histoires de mâcher le travail des développeurs et d'assumer que ce sont des débiles, très peu pour moi.
(13h43)Ttask Yolteotl > Oh si, ça a du sens ce que je dis. Je ne dis pas que tout le monde devrait programmer en C++ ou que Java n'a pas sa place dans le monde (quoique ...).
(13h35)MrPapillon Beaucoup de tâches en C++ sont des tâches mécaniques bêtes qui peuvent disparaître si on arrive à faire des langages malins.
(13h34)MrPapillon Et surtout le détail important : Rust a été fait pour un usage précis. Ce qu'il faut en retenir c'est qu'il y a de nouvelles solutions à des problèmes anciens. Et que beaucoup de concepts bougent.
(13h33)MrPapillon quand il le fait manuellement.
(13h33)MrPapillon Donc ce qui est fait 99% du temps par le programmeur.
(13h32)MrPapillon choo.t > Beaucoup se fait statiquement à la compil'. Donc pas de coût particulier : [pcwalton.github.io]
(13h08)choo.t Ttask > D'où ma question, pour assurer une désallocation automatique, Rust doit bien ajouter un overhead à l'allocation, c'est peut être pas énorme si tu alloues des gros blocks d'un coups, mais sur des multiples petites allocations, ça doit se ressentir.
(12h59)Yolteotl indispensable pour énormément de boites / projets. Suffit d'avoir toucher un petit peu à du J2EE pour comprendre.
(12h58)Yolteotl Ttask > ça n'a juste pas de sens ce que tu dis. Si facilité la tâche des devs c'est les prendre pour des demeurés. Java a des défauts, mais les gains de temps, de dev, de débug dans des applis où les perfs ne sont pas le critère prédominant, c'est juste
(11h30)MrPapillon C'est pas parce qu'un smart pointer a les mêmes fonctionnalités qu'un garbage collector que ça peut en remplacer un.
(11h30)MrPapillon choo.t > Et coller des smart pointers partout, quelle blague.
(11h29)MrPapillon Boost est une saloperie. C'est intéressant, ça permet de faire du lobbying pour ajouter des features dans le langage, mais c'est une vraie saloperie qu'il faut éviter à tout prix.
(11h29)Ttask choo.t > Je ne vois même pas ce que cela signifie parler des performances de C++ en ce qui concerne les allocations. Le langage est 100% transparent sur ce que tu fais. La rapidité de tes allocations ne dépend que de ton allocateur.
(11h28)MrPapillon La majorité des décisions sont prises à la compilation.
(11h28)MrPapillon choo.t > Rust n'a pas de "garbage collector" au sens où tu l'entends : [doc.rust-lang.org]
(11h23)choo.t allocations etc... ?
(11h23)choo.t MrPapillon > Si t'aime pas géré ta mémoire, tu peux coller de smart pointers (boost) partout, ça sera pas propre, mais pas plus sale que qu'un langage avec garbage collector inclus. T'as des liens vers des test de performance Rust vs C++ sur des
(11h23)Ttask Et quitte à choisir, je préfère travailler avec un langage qui demande une bonne expertise, qu'avec un autre langage qui part du principe que les programmeurs sont des demeurés (coucou Java).
(11h22)Ttask Indépendamment de l'éco-système, C++ est quand même tout à fait fonctionnel. Il y a de la merde optionelle dedans (les exceptions, quelle horreur...), les débutants peuvent faire n'importe quoi, mais le langage est transparent et assez expressif.
(11h13)MrPapillon *si un langage peut le faire de manière performante.
(11h12)MrPapillon Mais pour une app classique, si une app peut le faire de manière performante, ça me va (Rust prend une grosse partie des décisions d'alloc à la compil' je crois).
(11h11)MrPapillon Et dans l'absolu, moi je préfère bosser sur des algos que de gérer ma mémoire moi-même. Dans un jeu on est obligé de gérer, parce qu'on doit faire au mieux sur une plateforme supposée "fixe".
(11h09)MrPapillon Quand t'as besoin d'optimiser à un petit endroit, tu fais du code unsafe{} j'imagine.
(11h09)MrPapillon Rust est prévu pour faire du code browser, les browsers ça commence à être super complexe vu la quantité de code.
(11h08)MrPapillon divide > Pour la gestion des allocs, tout dépend de l'app.
(11h07)MrPapillon La grande majorité des programmes n'utilisent que des dépendances basiques.
(11h06)MrPapillon divide > L'écosystème va venir vite. Quand tu écris un prog, t'as pas besoin de toutes les libs existantes. Les progs avec peu de dépendances seront les premiers, ceux qui ont besoin de plus de dépendances viendront bien plus tard.
(11h04)divide et perso je préfère gérer moi-même mes allocations/adressages/destructions, avec les responsabilités que ça implique, que de laisser un langage faire sa gestion obscure
(11h03)thedan Il s font chier à sortir que des séries pour ados DC : [youtu.be] ...
(11h03)divide que tu bosse sur de l'image, du son, de la vidéo, de la 3D, du reseau, dès que tu creuse un minimum t'es obligé d'utiliser certaines librairies, fonctions ou hack auxquels tu n'a pas accès dans les autres langages
(11h01)divide Le fait est qu'à ce jour (et la situation sera la même dans 5 ans) tu ne peux pas développer nombre de programmes poussés sans t'appuyer sur des librairies/IDE performants
(11h00)divide MrPapillon > marrant, comme dans les réponses au tweet de Carmack tu ignore le principal point soulevé par l'article de blog: tout l'ecosystème autour de C++
(10h23)MrPapillon L'article est sur le site de PVS Studio.
(10h22)MrPapillon Juste pour les gens intéressés : Carmack passe son temps à lire les articles PVS Studio. PVS studio c'est un analyseur statique pour le C++, quelque chose dont on a beaucoup moins besoin sur d'autres langages comme le Rust.
(10h11)MrPapillon Enfin bref, la tribune c'est pas le meilleur endroit pour discuter.
(10h11)MrPapillon Le C++ a des additions dans le langage depuis 2011, une centaine peut-être et quasi aucune qui peut intéresser les gens du jeu vidéo. Juste des trucs pour complexifier encore plus, des sparadraps qui corrigent des erreurs de design fondamentales.
(10h08)MrPapillon Le gars s'excite contre Rust ou Erlang dans l'article, mais j'aimerais bien le voir recoder les serveurs écrits en Erlang en C++ pour s'amuser. Parce que Erlang c'est un peu une tuerie les features dédiées au serveur.
(10h07)MrPapillon Il n'y en a pour l'instant toujours pas pour le jeu vidéo.
(10h06)MrPapillon Le vertueux > Il n'y avait pas d'alternative à l'époque.
(10h06)Le vertueux C++ est donc le meilleur (si c'est celui là qui a été utilisé).
(10h06)MrPapillon Le vertueux > C'est pas le meilleur, c'est le seul actuellement.
(10h06)Le vertueux Est ce qu'on aurait pu faire Stalker avec Multimedia Fusion ou Rpg maker ? Je ne pense pas.
(10h05)Le vertueux MrPapillon > La question n'est pas de savoir s'il est parfait ou non, mais si c'est le meilleur, the best of the best !
(10h04)MrPapillon Le vertueux > La question est de savoir en combien de temps ça a été fait et si l'équipe devait attendre 30min après chaque récupération de code et 5min à chaque build et si elle a passé des heures à débugger des merdes du langage.
(10h03)MrPapillon Truc tout bête : obliger une fonction à être pure ou quasi pure (en laissant passer certains éléments).
(10h02)Le vertueux La question est de savoir si Stalker, mount and blade et dark souls ont été fait en C++, si c'est le cas, ça veut dire que c'est le meilleur langage de programmation et c'est tout.
(10h01)MrPapillon *certains trucs hyper importants et utiles.
(10h00)MrPapillon Et l'argument débile du "au moins le C++ me laisse faire ce que je veux", c'est faux. Le C++ permet de faire le con de 50 manières différentes, mais par contre empêche de faire des trucs hyper importants et utiles.
(09h59)MrPapillon Je n'ai pas dit que Rust devait remplacer le C++, j'ai dit que ça bougeait de partout et qu'on allait peut-être finalement arriver à un langage qui pourrait le remplacer.
(09h58)hohun Le genre de jeu où, à ta centième mort, tu prends deux minutes de pause et tu te rends compte qu'en fait, tu ne t'amuses absolument pas.
(09h58)MrPapillon Comme on en avait déjà discuté avant, Carmack n'est pas particulièrement un gourou en langages, il a appris le C++ très tardivement et n'a utilisé qu'un subset très limité sur Doom 3 (je sais pas ce qu'il a foutu dans Rage).
(09h58)hohun Bon, je viens de jouer à Electronic Super Joy, et décidément je ne comprendrai jamais l'attrait des gens pour les die&retry. La progression par la frustration, c'est vraiment une technique de gameplay de FDP.
(09h56)MrPapillon LeGreg > Je suis vraiment pas d'accord du tout. Le gars n'utilise que des arguments basiques et oublie les vraies problématiques d'un programmeur au jour le jour.
(09h16)Doc_Nimbus Il me fait bien de l'oeil ce Chroma Squad, des gens ont testé ici ?
(09h14)Yolteotl Anarchy > Je ne pense pas prendre TW3 parce que pas mon type de jeu, mais je mets volontiers à dispo de Factor mes 20 méga en UP et mon monstre de guerre si des Factorlive peuvent se faire :)
(08h50)divide En même temps il dit ne pas travailler dans un domaine qui demande contrôle et/ou perf. Si c'était le cas ce serait un peu gros de balancer ça...
(08h49)divide Ah putain ok. J'ai failli m'étrangler devant les affirmations trollesque de Mr Papillon.
(08h28)choo.t divide > Regarde la tribune du 11-12 mai.
(08h23)divide LeGreg > couldn't agree more. C++ FTW. Par contre je vois pas à qui tu répond ici :)
(07h51)LeGreg John Carmack pointait ça sur son twitter (Rust vs C++ flamewar) suite au débat sur la tribune : [viva64.com]
(02h51)rEkOM Obsidian embauche à tour de bras, ça fait plaisir!
(01h58)Anarchy Apres aussi j'connais personne d'autre qui fait du stream/letsplay yt en francais. Pas que j'ai vraiment cherche non plus mais bon.
(01h54)Anarchy J'ai pas envie de faire la leche, mais j'aime bien moi les Factor live. Ca dure 2h tous les 35 du mois, c'est sobre, c'est live, y'as un cote interactif donc tu peux demander sur le jeu. Bref c'est fun. Merite p-e d'etre bouge a tous les 32 du mois.
(00h21)MrPapillon J'ai l'impression que c'est rare les youtubers/streamers français connus et pas pénibles. Les streams NoFrag sont fonctionnels mais pas encore aussi puissants que leurs news.