Leurs arguments ça ne suffit pas sont bidons: par exemple celui du coĂ»t en bande passante des podcasts alors que rien ne leur interdit d'utiliser Bittorrent ou de permettre les miroirsâŠ
libgdx, pygame,⊠sont en C ou C++ plus qu'en python ou java quand ce n'est pas simplement sdl qui fait toutes la partie critique en terme de perf par exemple
Bref les GC modernes ne sont pas un problĂšme dans les jeux. Ni dans les applis web, ni dans 99% des applis. Il faut simplement ne pas te rater quand tu es dans le 1% des cas qui demande une gestion manuelle.
Je ne sais pas trop ce que tu veux dire par "en frontend", mais beaucoup de jeux utilisent un langage GC comme langage principal et pas seulement comme langage de script.
Regarde ce qui se fait avec les cadriciels Java (libgdx, lwjgl), Python (pygame), C# (monogame, Unity), Lua (Löve).
On fait ça aussi en C ou en C++. C'est parfois utile, mais ça ne change pas le problÚme: au lieu de faire attention à mes pointeurs, je dois faire attention à mes indexes.
[^] # Anjou... Feu !
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal Cyclimse en Anjou. Ăvalué à  2.
Les cyclistes et trottineurs devraient ĂȘtre autorisĂ©s Ă rouler sur les trottoirs. La plupart des pistes cyclables Ă©tant des trottoirs peint en vert, ça Ă©conomiserait beaucoup de peinture !
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
# Du webdesign excluant
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien Une "Ă©criture excluante" qui "sâimpose par la propagande". Ăvalué à  5.
Marianne, site pourrave n°769.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Quel est l'intĂ©rĂȘt ?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal C++ vin va vous faire tourner en barrique !. Ăvalué à  4.
Si ta lib accepte plusieurs implĂ©mentations d'un vecteur qui respecte le mĂȘme contrat, pourquoi ne pas faire du policy based design ?
L'usage serait ainsi plus propre.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: SMTP
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien RFC 8890: The Internet is for End Users. Ăvalué à  3.
Quelles ont été les solutions?
Je veux dire à part faire des clients XMPP si hétérogÚnes que plus personne ne l'utilise :(
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: C'est pas pour casser l'ambiance
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Java 15 est sorti. Ăvalué à  3.
Le seul problÚme de Java, c'est qu'il est grassouillet. Espérons qu'il se mette au régime un jour.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Quel est l'intĂ©rĂȘt ?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal C++ vin va vous faire tourner en barrique !. Ăvalué à  5.
Si tu as du code qui varie selon le type, il vaut mieux utiliser des templates que des macros, non?
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: RÚglement anti-libéral?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien La justice europĂ©enne confirme que le «trafic gratuit» enfreint les rĂšgles sur la neutralitĂ© du net. Ăvalué à  9.
Le fonctionnement naturel du capitalisme est de naßtre par le renversement de la noblesse par la bourgeoisie qui s'approprie les terres et les Hommes en changeant les lois au nom de la Liberté puis concentre toutes les richesses à travers la prolétarisation de la paysannerie et des artisans avant de mourir sous le coup d'une révolte ouvriÚre ou suite à l'épuisement des ressources.
Heureusement on a adopté une démocratie sociale et écologique pour éviter tout ça !
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
# Pourquoi juste citer les voitures électriques?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien Batteries des voitures Ă©lectriques - 40.000 enfants travaillent dans des mines en Afrique. Ăvalué à  5.
D'aprĂšs wikipedia, c'est 50% de l'usage pour des batteries et pas seulement pour les voitures.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: La BBC aussi!
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal France Inter fait des podcasts. Ăvalué à  5.
L'idéal serait de proposer de payer cette redevance pour ne pas avoir de pub !
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Aller écouter ailleurs
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal France Inter fait des podcasts. Ăvalué à  6.
Ils peuvent décider de la licence de leurs propres émissions :-)
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: AMD dans les consoles next-gen
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal Le dĂ©but de la fin pour Intel ?. Ăvalué à  4.
Question de compétences !
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
# Aller écouter ailleurs
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal France Inter fait des podcasts. Ăvalué à  10. DerniĂšre modification le 11 septembre 2020 Ă 09:29.
La publicité est sur Radio France est une honte: la radio est déjà financée par la redevance, ils n'ont pas besoin de faire de la pub.
Leurs arguments ça ne suffit pas sont bidons: par exemple celui du coĂ»t en bande passante des podcasts alors que rien ne leur interdit d'utiliser Bittorrent ou de permettre les miroirsâŠ
Mais comme ils ne changeront pas, le plus simple n'est pas de contourner la publicité, mais d'aller écouter d'autres podcasts gratuits et sans pub.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Article L224-33
Posté par devnewton đș (site web personnel) . En rĂ©ponse au journal Les pratiques commerciales de BouyguesTelecom. Ăvalué à  9.
Une bonne Loi devrait imposer deux choses pour une nouvelle offre:
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  3.
Ăa me rappelle ce nourjal https://linuxfr.org/users/devnewton/journaux/veuillez-instancier-ce-journal-avant-de-le-lire !
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Quelles voitures?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien Coup de tonnerre : les voitures Ă©lectriques ne seraient pas Ă©cologiques !. Ăvalué à  3.
Ce que je voulais dire par ma question, c'est que si on veut réduire l'impact écologique des voitures, il va falloir changer à la fois de type d'énergie, mais aussi de type de véhicule.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
# Quelles voitures?
Posté par devnewton đș (site web personnel) . En rĂ©ponse au lien Coup de tonnerre : les voitures Ă©lectriques ne seraient pas Ă©cologiques !. Ăvalué à  5. DerniĂšre modification le 08 septembre 2020 Ă 17:11.
Une Tesla de plus de deux tonnes ou une Citroën Ami de moins 500kg?
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  3.
C'est souvent utilisé dans le moteur physique qui est critique.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  3. DerniĂšre modification le 08 septembre 2020 Ă 14:50.
Logique ce sont des bindings, mais une bonne partie du code est quand mĂȘme dans le langage Ă GC. Avec le code des jeux qui l'utilisent, ça fait une majoritĂ© du code final sous GC.
Logique aussi, une bonne partie de la mĂ©moire dans un jeu, ce sont les vertices, les shaders et les textures qui ne sont mĂȘme pas en RAM et qu'il faut de toute façon gĂ©rer Ă la main, GC ou pas GC.
Il y a aussi beaucoup d'autres données, par exemple le moteur physique qui lui bombarde bien la RAM et là aussi il faut optimiser à coup de préallocations et de piscines. GC ou pas.
Bref les GC modernes ne sont pas un problĂšme dans les jeux. Ni dans les applis web, ni dans 99% des applis. Il faut simplement ne pas te rater quand tu es dans le 1% des cas qui demande une gestion manuelle.
Ca ne veut pas dire que les GC sont une meilleure approche que les "pointeurs intelligents", mais juste une solution plus simple et plus générale.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  6.
Je ne sais pas trop ce que tu veux dire par "en frontend", mais beaucoup de jeux utilisent un langage GC comme langage principal et pas seulement comme langage de script.
Regarde ce qui se fait avec les cadriciels Java (libgdx, lwjgl), Python (pygame), C# (monogame, Unity), Lua (Löve).
L'accÚs aux API graphique/sonore/inputs se font toujours en C, mais la majorité du code et donc des allocations mémoires sont pris en charge par le GC.
Pourquoi ces jeux sont fluides et n'ont pas de gros ralentissements dĂ» Ă un ramasse miette ArrĂȘte Le Monde? Parce que d'une part, comme je l'ai dĂ©jĂ dit, les GC modernes ramassent les mettes de façon incrĂ©mentales et concurrentes, d'autre part les dĂ©veloppeurs de jeux font la chasse aux allocations/dĂ©sallocations en prĂ©-allouant un maximum de choses, en utilisant des pools, en prĂ©fĂ©rant des tableaux fixes aux hashmaps dynamiquesâŠ
Cette chasse est faite aussi dans les jeux en C/C++, car comme je l'ai déjà dit aussi, les malloc/free, c'est coûteux pour tout le monde, pas seulement quand c'est un GC qui les fait.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  3.
Comme dit plus haut, regarde le nombre de jeux écrit avec un langage à GC.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  5.
Aujourd'hui les vraies pauses sont si petites qu'on ne les remarque plus (CTBÂ !).
Il y a mĂȘme un GC pauseless pour Java, mais il n'est pas libre :(
Note aussi que le temps d'exécution des autres modes de libération de la mémoire n'est pas NULL non plus.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  3.
Les premiers GC stoppaient le monde. Les modernes travaillent de façon incrémentale et parallÚle.
Beaucoup de jeux utilisent un langage Ă ramasse miettes sans problĂšme: tous les jeux Java, html5, Unity, LuaâŠ
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  5.
J'ai rarement eu besoin des weak references et à chaque fois c'était pour des ressources systÚmes (les textures dans Newton Adventure par exemple :-) ) qui de toute façon demande une gestion particuliÚre.
Est-ce qu'il ne vaut pas mieux un langage avec un GC pour 99% des allocations et gérer à la main le 1% qui reste?
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  4.
On fait ça aussi en C ou en C++. C'est parfois utile, mais ça ne change pas le problÚme: au lieu de faire attention à mes pointeurs, je dois faire attention à mes indexes.
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board
[^] # Re: Pffff
Posté par devnewton đș (site web personnel) . En rĂ©ponse Ă la dĂ©pĂȘche Rust a 5 ans, rĂ©trospective. Ăvalué à  6.
Ce qui me vient en tĂȘte immĂ©diatement, c'est un code qui manipule des graphes.
En java ou C, je vais avoir des classes ou structures Graph, Edge et Node.
En C, il faudra faire bien attention Ă passer free partout, au bon moment et dans le bon ordre.
En C++, on va choisir avec soin quelles références seront des unique_ptr, des shared_ptr ou des weak_ptr selon les cas d'usage.
Avec un ramasse miette, chacune peut avoir des références sur les autres, on ne va pas se préoccuper de la durée de vie des objets, des pointeurs forts ou faibles⊠Osef on a de la RAM et le GC passera le balai !
Et avec Rust ?
Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board