🏡


  1. Replacing JS with just HTML - HTMHell
  2. Rust Binary Analyis 101 - Part 2 - Z3R0cool Blogs
  3. mprocs: start all your project's commands at once
  4. Jon's Arm Reference
  5. Optimize for momentum

  1. December 30, 2025
    1. 🔗 Hex-Rays Blog SDK and IDAPython Improvements for Plugin Developers rss

      SDK and IDAPython Improvements for Plugin Developers

      The soon to be released IDA 9.3 includes improvements for both plugin developers and IDA users, with updated SDK capabilities and new Lumina API access. These updates simplify building the SDK and IDAPython, while adding direct Lumina API access for plugin functionality.

  2. December 29, 2025
    1. 🔗 sacha chua :: living an awesome life La semaine du 22 au 28 dĂ©cembre rss

      Lundi, le vingt-deux décembre

      Comme d'habitude, mon mari a cuisinĂ© des petites crĂȘpes Ă©paisses. Nous les avons mangĂ©es avec un Ɠuf frit au milieu. Mon mari l'a appelĂ© « Egg McCrumpet Sandwich ». Quand ma fille s'est levĂ©e, elle m'a demandĂ© de cuisiner des crĂȘpes. Donc je les ai cuisinĂ©es pour de vrai. Elle a mis de la tartinade aux noisettes sur une crĂȘpe. Elle a dit que c'Ă©tait dĂ©licieux.

      J'ai amélioré mon outil pour la synthÚse vocale. Maintenant, je peux cliquer sur un mot pour l'écouter. J'ai pratiqué les phrases pour la prononciation que ma tutrice a remarqué la semaine derniÚre et toutes mes entrées pour cette semaine. Au moins, lors de notre rendez-vous, ce ne sera pas la premiÚre fois que je prononcerai ces mots.

      AprÚs le rendez-vous, nous avons fait les courses. Ma fille avait envie de yaourts brassés, donc elle a mis longtemps à comparer les différents types. Je vais cuisiner des lasagnes puisque les magasins seront fermés, donc j'ai acheté les ingrédients.

      Pour le souper, j'ai cuisinĂ© des bĂ©bĂ©s pak-choĂŻs et du saumon. Curieusement, j'ai oubliĂ© un bok choy dans le sac, je suis bĂȘte. Mon mari m'a donnĂ© des conseils pour cuisiner pendant qu'il cuisinait des muffins anglais. AprĂšs le souper, ma fille a prĂ©parĂ© de la pĂąte pour des biscuits. J'apprĂ©cie l'expĂ©rience de cuisiner ensemble, mĂȘme si je dois prĂ©parer mon bulletin sur l'Emacs plus tard.

      J'ai accidentellement abĂźmĂ© ma brosse Ă  dents Ă©lectrique. Alors, je pense que j'avais oubliĂ© de la nettoyer suffisamment, donc hier soir, elle a arrĂȘtĂ© de fonctionner. Quand je l'ai dĂ©montĂ©e pour en trouver la cause, la piĂšce qui tient la tĂȘte de brosse s'est sĂ©parĂ©e du corps. J'ai essayĂ© de la rĂ©parer, mais ma fille est devenue impatiente et grincheuse. Elle est allĂ©e dans sa chambre et s'est assise contre sa porte pour que je ne puisse pas entrer. Je l'entends lire des livres toute seule, au moins, donc elle pratiquait l'autorĂ©gulation Ă©motionnelle, qui est si importante dans la vie. Quand elle a fermĂ© la porte, elle a dit qu'elle pouvait se dĂ©brouiller toute seule, et Ă  cette occasion, je pense qu'elle peut gĂ©rer ça, bien sĂ»r. Je regrette d'avoir laissĂ© ce problĂšme dĂ©tourner mon attention, mais parfois les choses arrivent, et peut-ĂȘtre qu'elle doit aussi apprendre Ă  gĂ©rer quand mon attention est nĂ©cessaire ailleurs.

      Je me suis sentie embarrassée, hésitante, et un peu consternée, incapable et préoccupée. Mais c'est la vie, il y a des hauts et des bas.

      Mardi, le vingt-trois de décembre

      Hier soir, ma fille est revenue tard dans la nuit. Elle a eu froid, donc elle s'est blottie contre moi. Elle a aussi volĂ© mon oreiller. Mais je l'aime malgrĂ© cela et malgrĂ© ses orteils froids. Elle a beaucoup de couvertures dans sa chambre, mais je suppose qu'elle veut se rapprocher, donc ça ne me dĂ©rangeait pas. Je ne dors jamais bien quand elle est dans le mĂȘme lit parce qu'elle me collait par rĂ©flexe tout au long de la nuit, donc nous avons fait la grasse matinĂ©e.

      Ma fille a encore écrit une liste avec enthousiasme, donc je l'ai aidée. Nous avons déblayé la neige qui est trÚs lourde parce que la température était au-dessus de zéro. Le chasse-neige est passé, mais il y avait beaucoup de neige qui restait.

      AprĂšs l'exercice, nous avons prĂ©parĂ© des biscuits. Ma fille a utilisĂ© des emporte-piĂšces pour faire des Ă©toiles, des anges, des cƓurs, des cercles et des ovales. Elle s'amĂ©liore Ă  placer les emporte-piĂšces pour minimiser l'espace entre eux. Pendant qu'elle mettait les emporte-piĂšces, j'ai fait cuire des biscuits. Naturellement, nous avons testĂ© des biscuits pour le contrĂŽle de la qualitĂ©. Nous avons laissĂ© les biscuits refroidir avant de les glacer.

      Pendant ce temps-là, j'ai fini le bulletin sur Emacs pour cette semaine et elle a joué à Minecraft.

      J'ai préparé du glaçage royal à la poudre de meringue. Ma fille a décoré les biscuits avec grand plaisir et énormément de vermicelles. Je n'accepte pas souvent de faire des biscuits glacés, uniquement pour les occasions spéciales. C'est trÚs festif. Un plus grand contrÎle de la qualité a été nécessaire, bien sûr. Mon mari nous a aidées à tester les biscuits plusieurs fois.

      J'ai aussi prĂ©parĂ© des lasagnes. J'aime faire ça avec plus de fromage. Quand j'Ă©tais enfant et que j'habitais aux Philippines avec ma famille, nous prĂ©parions souvent des lasagnes pendant la pĂ©riode des fĂȘtes. MĂȘme si j'habitais avec une colocataire en rĂ©sidence, j'ai prĂ©parĂ© des petites fournĂ©es de lasagnes dans le petit four. Maintenant, ma fille aime aussi les lasagnes, donc je les cuisine de temps en temps pendant les mois plus froids.

      Ma fille est revenue pendant que les lasagnes étaient dans le petit four. Elle était déçue parce qu'elle voulait m'aider. Ce problÚme a été résolu facilement. Nous avons fait les courses puis nous avons cuisiné de nouvelles lasagnes. Elle a aimé les assembler. On peut toujours les partager ou les congeler.

      Sur l'apprentissage du français :

      IdĂ©alement, un jour je pratiquerai tous les aspects chaque jour : la lecture, l'Ă©coute, l'Ă©criture, et l'expression orale. Mais je trouve que prendre du temps pour la lecture et la comprĂ©hension orale est difficile. Je me sens motivĂ©e pour Ă©crire parce que c'est une façon de repenser Ă  ma journĂ©e et de me souvenir des moments. Je pratique l'expression orale chaque semaine, mais chaque jour, c'est mieux. Toutefois, il y a toujours un compromis Ă  faire parce que mon temps est limitĂ©. Je veux enrichir mon vocabulaire et apprendre plus de grammaire pour pouvoir exprimer plus de choses. Si je trouve quelque chose que j'aime bien Ă©couter, peut-ĂȘtre que je peux Ă©couter en faisant la vaisselle ou en me promenant. Trouver le temps pour la lecture juste pour le plaisir est plus difficile, sauf si je peux faire ça sur mon portable, ce qui signifie que je dois amĂ©liorer la lecture en français jusqu'Ă  ce que ce soit assez facile pour que je la choisisse au lieu de scroller. J'ai dĂ©jĂ  souvent choisi d'Ă©crire mon journal en français ou de revoir les cartes d'Anki avant de scroller, donc il y a de l'espoir. L'app ReadLang avec les blogs et SmartBook avec les EPUBs semblent utiles.

      Mercredi, le vingt-quatre décembre

      Le soleil brillait, donc nous sommes allés à la bibliothÚque à pied pour emprunter un livre pour mon mari. Puis, nous avons fait les courses pour des bombes de chocolat chaud que ma fille veut boire demain aprÚs avoir déballé ses cadeaux. Nous avons conversé avec nos voisins, et ma fille a donné plusieurs biscuits à un voisin. (L'autre voisin était déjà parti.)

      J'ai passĂ© prendre mon vĂ©lo cargo au magasin de cycles. Il n'y a pas de pneu spĂ©cialisĂ© pour le verglas, mais la vendeuse a dit que ça peut aller si je fais du vĂ©lo attentivement. La vendeuse est aussi bĂ©nĂ©vole pour Bike Brigade, donc nous avons un peu bavardĂ©. Elle a dit qu'un autre vendeur lisait mon blog. Comme c'est gentil. Je dois Ă©crire une entrĂ©e sur ma deuxiĂšme annĂ©e avec mon vĂ©lo cargo. Selon mon compteur, j'ai parcouru plus de 4 100 km Ă  vĂ©lo en un peu plus de deux ans, ce qui est uniquement possible parce que ma fille peut m'accompagner dans mon vĂ©lo cargo. Le vĂ©lo cargo est trĂšs pratique. J'aime mieux faire du vĂ©lo que prendre le mĂ©tro ou marcher. Cette annĂ©e, la voiture de mon mari a arrĂȘtĂ© de fonctionner et a Ă©tĂ© mise Ă  la casse, donc nous n'avons pas de voiture. La voiture ne nous a pas du tout manquĂ©. Mon mari a louĂ© une voiture quand nous sommes allĂ©s Ă  l'Ă©vĂ©nement familial Ă  l'extĂ©rieur de la ville. Pour le reste, on s'en est sortis surtout Ă  vĂ©lo. Aujourd'hui l'entretien de mon vĂ©lo a coĂ»tĂ© environ 300 dollars, ce qui est toujours beaucoup d'argent, mais moins cher que pour la voiture.

      J'ai tĂ©lĂ©chargĂ© la base de donnĂ©es Lexique et l'ai chargĂ©e dans SQLite pour rĂ©cupĂ©rer les donnĂ©es rapidement. J'ai créé une brĂšve fonction pour chercher le genre et le nombre du mot. Ça semble utile pour Ă©crire. Je dois assigner un raccourci clavier pour la fonction. Lequel serait le plus pratique…

      Une réflexion sur les gens d'Emacs :

      J'aime bien l'Ă©diteur Emacs. C'est si personnalisable. Comme il est tellement personnalisable, quand on lit les fonctions, on peut avoir un aperçu de la vie des autres, de leurs objectifs, et des dĂ©fis dont ils sont venus Ă  bout avec les fonctions. En lisant le code, on dĂ©couvre une petite partie de leur univers. Parfois on peut rencontrer des gens sur les blogs (l'agrĂ©gateur Planet Emacslife est trĂšs utile), les vidĂ©os, les rĂ©unions virtuelles ou la confĂ©rence annuelle EmacsConf. J'aime particuliĂšrement la sĂ©rie Prot Asks oĂč il converse avec quelques personnes de tout et de rien. Les gens qui sont intĂ©ressĂ©s par Emacs sont toujours Ă©galement intĂ©ressĂ©s par d'autres choses passionnantes. MĂȘme s'ils sont dispersĂ©s physiquement et sont occupĂ©s, ce qui fait que la coopĂ©ration est trĂšs rare, j'apprĂ©cie qu'ils existent, ils crĂ©ent, ils partagent…

      Qui m'a le plus influencé ? C'est probablement John Wiegley. Son Planner Mode m'a aidée à organiser mes notes à l'université et m'a inspirée à l'utiliser et à faire du bénévolat. Son Ledger CLI m'a aidée à budgétiser, ce qui m'a permis cette expérience de la vie indépendante. Son idée pour Emacs News continue de me connecter à la communauté Emacs. J'ai pu le rencontrer en 2003 à l'EmacsConf à Londres. Quelle chance !

      Beaucoup d'autres personnes me rĂ©chauffent le cƓur. J'apprĂ©cie aussi Jon Snader pour toujours Ă©crire beaucoup de commentaires sur son blog Irreal, et j'apprĂ©cie beaucoup de blogueurs, crĂ©ateurs de vidĂ©os, et ceux qui partagent des liens. J'apprĂ©cie kensanata qui entretient EmacsWiki, les modĂ©rateurs du salon #emacs et d'autres canaux d'IRC, et les bĂ©nĂ©voles qui font de la modĂ©ration sur les listes de diffusion. Ils font Ă©normĂ©ment de travail en coulisses pour rendre l'expĂ©rience plus plaisante pour nous. J'apprĂ©cie Eli Zaretskii et les autres mainteneurs d'Emacs, yantar92 qui entretient Org Mode, et les mainteneurs d'autres packages. Je suis toujours Ă©tonnĂ©e de voir que les gens partagent leur temps avec nous.

      Bien sĂ»r, il y a des difficultĂ©s. L'intelligence artificielle peut aider les gens Ă  comprendre et Ă  crĂ©er beaucoup de choses, mais ça peut aussi nous inonder de contenu insipide. Étrangement, certaines personnes ont du mal Ă  ĂȘtre polies. Mais je ne dois pas leur laisser gĂącher ma reconnaissance pour le reste. J'aime bien lire les billets de blog sur Emacs et les autres sujets, donc je dois ajouter plus de blogs Ă  mon agrĂ©gateur.

      Et ensuite ? Je travaille lentement Ă  copier les discussions d'EmacsConf. Je continue de publier le bulletin Emacs News. Un jour je veux enregistrer des vidĂ©os et Ă©crire des billets. Cette annĂ©e semble plus difficile pour les gens : plus occupĂ©s, plus stressĂ©s… Peut-ĂȘtre qu'EmacsConf devrait aussi s'adapter aux temps changeants. Je me demande ce qui pourrait me faciliter la tĂąche. Cela me stresse surtout Ă  cause de l'administration systĂšme, la conversion des vidĂ©os et la gestion de plusieurs choses Ă  la fois pendant la confĂ©rence, particuliĂšrement en direct sur scĂšne. Si je limite ça Ă  une piste, elle sera peut-ĂȘtre plus gĂ©rable. Nous nous organisons ensemble.

      Jeudi, le vingt-cinq décembre

      Joyeux NoĂ«l ! PremiĂšrement, ma fille a fait chauffer du lait pour des bombes de chocolat chaud. Elle a dit qu'elle avait besoin de combustible pour dĂ©baller les cadeaux. Le PĂšre NoĂ«l a dĂ» venir hier soir, parce que les cadeaux que nous avons laissĂ©s de cĂŽtĂ© sur le sapin peint sont dispersĂ©s partout dans la maison pour le jeu de piste. Les indices avaient un mot en français au moins ainsi que le surplus en anglais. Un cadeau Ă©tait derriĂšre le calendrier de l'avent, un autre Ă©tait dans le chariot pour faire les courses, encore un autre Ă©tait dans le micro-onde, le quatriĂšme Ă©tait dans l'atelier, et le dernier cadeau Ă©tait dans le grand four. Ma fille a bien aimĂ© le jeu de piste, et a particuliĂšrement aimĂ© le Gingerbread AT-AT. Elle a dit que c'est en rupture de stock, pourtant le PĂšre NoĂ«l a rĂ©ussi Ă  l'obtenir. C'Ă©tait trĂšs impressionnant. Elle a aussi reçu un hoodie, deux chemises, un autre jeu de LEGO, et un axolotl en peluche qui peut chauffer ou refroidir. AprĂšs le petit-dĂ©jeuner, ma fille a regardĂ© la vidĂ©o que la GoPro a enregistrĂ©e. Les cadeaux sont apparus magiquement accompagnĂ©s de lumiĂšres scintillantes et ont changĂ© de place eux-mĂȘmes. C'est la troisiĂšme annĂ©e que ma fille essaie d'enregistrer le PĂšre NoĂ«l. Je pense que les lumiĂšres scintillantes sont devenues plus sophistiquĂ©es chaque annĂ©e.

      Nous avons préparé des boules de pùté au fromage. AprÚs le déjeuner, ma fille a construit ses jeux pendant que je faisais ma sieste de Noël traditionnelle. Je me suis couchée trÚs tard et ma fille s'est blottie contre moi, donc j'étais fatiguée. Ensuite, nous avons joué encore aux LEGO, puis j'ai emmené ma fille à la patinoire pour jouer avec son amie. C'était un peu bondé, mais parfois elles ont pu jouer à chat avec le pÚre de son amie. Elles ont pris beaucoup de plaisir. J'ai aimé voir ma fille apprécier toute la famille de son amie, y compris son chien.

      AprĂšs ĂȘtre rentrĂ©es Ă  la maison, ma fille a essayĂ© le nouveau hoodie que sa tante lui a donnĂ©. Il Ă©tait trop grand. Ma fille a dit que je peux le porter jusqu'Ă  ce qu'elle grandisse.

      Ensuite, j'ai préparé le bulletin de Bike Brigade et écrit cette entrée. Pour le souper, mon mari et ma fille ont cuisiné des burritos.

      Ma fille a voulu acheter un bolĂ©ro noir en velours et quelques autres habits. Je deviens souvent un peu grincheuse en faisant du shopping, donc c'est une bonne chose que ma fille ait ses propres Ă©conomies et qu'elle puisse dire qu'elle veut payer elle-mĂȘme. Comme son pĂšre, elle choisit facilement, mais je me retrouve souvent bloquĂ©e par l'indĂ©cision ou la surstimulation. Je dois approcher mes choix petit Ă  petit. C'est bon que ma fille choisisse pour elle-mĂȘme. Je lui donne une fraction de mes revenus de mon travail de consultante, donc elle peut gĂ©rer un budget raisonnable pour les jouets et d'autres choses.

      Elle a aussi voulu acheter des appliquĂ©s comme celles que Rumi porte dans K-Pop Demon Hunters, mais il n'y avait pas beaucoup de choix et les produits sont un peu chers. Si j'apprends Ă  peindre sur tissu, ce serait peut-ĂȘtre plus utile et intĂ©ressant. Peut-ĂȘtre que la broderie est trop chĂšre ou trop difficile pour l'instant.

      Elle m'a demandĂ© de l'aider Ă  laver ses cheveux Ă  cause de ses nouveaux piercings. J'ai lavĂ© ses cheveux par-dessus le cĂŽtĂ© du bain comme au salon de coiffure. Je n'ai pas de douchette, donc j'ai utilisĂ© un pot de yaourt vide pour verser l'eau chaude sur ses cheveux. AprĂšs le petit spa, j'ai mis encore une couverture sur son lit parce qu'elle avait froid. La couverture est plus grande que son lit, donc maintenant elle peut ĂȘtre bien emmitouflĂ©e.

      Elle a aussi reessayé l'érythromycine. L'autre jour, elle a pleuré parce que l'érythromycine lui a trop piqué les yeux. C'est ma faute. J'ai mis trop d'érythromycine pendant trop de temps parce que j'ai supposé que la conversation avec la pharmacienne était tout ce dont j'avais besoin. J'ai dû rechercher aussi les instructions. J'étais tellement soulagée qu'elle la réessayait. Cette fois, ça ne l'a pas dérangée, ce qui signifie que nous pouvons aussi l'utiliser un jour. Ma fille est plus courageuse que je ne le pensais.

      Ma vie est belle, m'a-t-elle dit à l'heure du coucher. La mienne aussi, chérie, la mienne aussi..

      Vendredi, le vingt-six décembre

      J'ai rangĂ© ma chambre, la commode dans la chambre de ma fille, et la salle de bain. Ma fille voulait un endroit oĂč elle puisse utiliser son maquillage. J'ai dĂ©barrassĂ© la surface de la commode pour qu'elle puisse ranger ses affaires. Elle est plus sophistiquĂ©e que je ne l'ai jamais Ă©tĂ© : elle recherche des produits en ligne, converse avec les vendeuses, choisit pour elle-mĂȘme…

      Ensuite, ma fille a terminé la construction de ses jouets. Ensuite, nous avons regardé un film ensemble.

      J'ai Ă©coutĂ© des enregistrements en français pendant que je dĂ©neigeais. J'ai dĂ» le faire deux fois parce que la neige continuait de tomber. Je suppose que je n'ai pas besoin de vidĂ©os d'exercice en hiver quand Ă©normĂ©ment de neige tombe. C'est une bonne occasion pour Ă©couter, mĂȘme si Ă  un moment, mon Ă©couteur Bluetooth s'est connectĂ© par erreur au portable de ma fille quand elle a commencĂ© un jeu.

      AprĂšs avoir mangĂ© les restes, elle a travaillĂ© sur ses devoirs. (Finalement ! Je pense que c'Ă©tait la premiĂšre fois de ces vacances…) Pendant ce temps, je jouais Ă  sa place Ă  Ni No Kuni. Je me dis que c'est sa propre expĂ©rience. J'ai beaucoup de choses que je veux faire. Par exemple, je veux Ă©crire plus en français, finir le travail de la confĂ©rence, rĂ©flĂ©chir Ă  mon annĂ©e, rattraper mon retard… Je ne peux pas la forcer Ă  vouloir quelque chose, comme la rĂ©ussite scolaire. C'est particuliĂšrement difficile pour moi, parce que je ne me concentrais pas sur mes Ă©tudes quand j'Ă©tais Ă  l'Ă©cole. Je dois ĂȘtre calme au lieu de m'inquiĂ©ter. Elle doit avoir le dĂ©clic. Elle veut ce qu'elle veut. Si je l'encourage et l'aide, au moins elle n'est pas seule. Je veux toujours la voir telle qu'elle est, ni comme ce que les autres attendent d'elle, ni selon ce qui est pratique pour les attentes du systĂšme. Peut-ĂȘtre qu'on attend le bulletin de notes pour avoir son propre bilan.

      Samedi, le vingt-sept décembre

      J'ai emmené ma fille au parc pour descendre la colline en luge. Nous avons descendu la grande colline ensemble quelques fois. Elle a descendu la petite colline de luge beaucoup de fois, et elle a aussi essayé à partir de la moitié de la grande colline beaucoup de fois toute seule. Nous avons vu un enfant percuter les bottes de foin autour d'un arbre. Heureusement, il avait l'air d'aller bien.

      AprÚs le chocolat chaud, elle a pilé la glace sur le chemin avec son grand bùton pendant que je pelletais. J'ai aussi mis du sel pour éviter le verglas.

      J'ai créé une petite fonction pour rechercher des mots dans le dictionnaire dans Emacs. Thierry Volpiatto a publiĂ© un dictionnaire de traduction anglais-français qui a Ă©tĂ© converti Ă  partir de Wiktionary. J'ai aussi créé quelques fonctions pour surligner et compter les nouveaux lemmes. C'Ă©tait Ă©tonnamment facile de combiner les donnĂ©es de Lexique et les donnĂ©es de mon outil pour analyser mon journal. Ça facilitera probablement l'Ă©criture de billets plus complexes. Mon objectif est d'apprendre vingt nouveaux lemmes chaque jour, ce qui correspond aux nouvelles cartes que je peux Ă©tudier dans Anki. Un peu plus, c'est bien aussi.

      Ma fille m'a demandĂ© une plus longue serviette Ă  cheveux, donc je lui en ai cousu une. L'avantage de fabriquer quelque chose soi-mĂȘme est que nous pouvons le faire comme on le veut. L'annĂ©e prochaine, je coudrai plus souvent. C'est faisable, surtout parce que je ne trouve pas souvent ce que je veux acheter. On peut commencer par de petits projets comme les pantalons de pyjama. Ma fille pense toujours Ă  beaucoup d'idĂ©es.

      Malgré les morceaux de raisin quotidiens, la coccinelle s'est échappée de son bocal d'une façon ou d'une autre. Ma fille pense que l'étamine a dû se déplacer. Eh bien, bonne chance, petite coccinelle !

      Dimanche, le vingt-huit décembre

      Ma fille est encore venue pour se blottir contre moi. J'Ă©tais trĂšs fatiguĂ©e, donc aprĂšs un bref cĂąlin, je suis allĂ©e dans son lit pour y dormir. Peut-ĂȘtre que mes grandes couvertures sont plus faciles Ă  garder pour elle. Ses couvertures Ă©taient assez chaudes pour moi. J'ai mieux dormi que si je m'Ă©tais blottie contre elle toute la nuit, et elle avait assez chaud aussi.

      J'ai emmené ma fille à la patinoire pour jouer avec son amie. Comme d'habitude, elles ont joué à chat avec le pÚre de son amie. Il n'y avait pas beaucoup de monde, donc ça allait. Ensuite, elles ont joué avec le chien dans la neige. Le chien était trÚs joueur.

      À cause des oies qui passent lĂ -haut en V (peut-ĂȘtre un peu tard dans la saison pour la migration ? ), son pĂšre et moi avons discutĂ© du changement climatique et des autres dĂ©fis. Nous avons aussi discutĂ© de l'intelligence artificielle Ă  l'Ă©cole et au travail pendant que nous attendions les enfants. Je pense que le systĂšme actuel d'Ă©ducation doit s'adapter. Si on ne veut pas apprendre, il y a beaucoup de façons d'Ă©viter le travail, avec l'IA ou non. L'Ă©cole ne peut pas se limiter aux feuilles d'exercice ou aux rĂ©dactions que l'Ă©tudiant Ă©crit seulement pour rĂ©ussir les cours. Mais je ne peux pas encore penser Ă  une bonne alternative. Pour moi, j'ai utilisĂ© l'IA avec prĂ©caution Ă  cause de ses limites. Je pense que la sociĂ©tĂ© a besoin de rĂ©flexion, mais je ne suis pas optimiste en ce moment. Qu'on se fasse avoir par le battage publicitaire ou qu'on doive obtempĂ©rer Ă  cause des nĂ©cessitĂ©s de la vie, je pense que ça ne va pas bien.

      Parfois je pense que mon travail est de mettre ma fille Ă  l'abri du tumulte des temps actuels (ou au moins d'attĂ©nuer le poids pour qu'il soit gĂ©rable) jusqu'Ă  ce qu'elle puisse gĂ©rer les choses toute seule. Je vois qu'on ne peut pas compter sur des entreprises ou la sociĂ©tĂ© pour dĂ©fendre nos intĂ©rĂȘts dans l'ensemble. Si elle est prĂȘte pour trouver sa propre voie tout en apprĂ©ciant les autres, c'est probablement assez bien. Ça signifie qu'elle doit trouver ses propres objectifs et raisons. Si elle se connaĂźt elle-mĂȘme et sait ce qu'elle veut, elle peut utiliser l'Ă©cole ou le travail pour s'amĂ©liorer et accomplir ses objectifs. Mais elle est encore une enfant et les tentations sont plus fortes, on dit peut-ĂȘtre. C'est vrai, son cerveau mĂ»rit toujours. Mais elle aspire Ă  l'autodĂ©termination, et je pense que c'est mieux qu'elle puisse expĂ©rimenter parce que les enjeux sont faibles.

      Nous sommes rentrĂ©es Ă  la maison. Mon mari a fait les courses, donc j'ai attendu jusqu'Ă  son retour. Puis je suis allĂ©e au coin de la rue pour dĂ©neiger la congĂšre que le chasse-neige a faite, parce qu'elle Ă©tait trĂšs gĂȘnante. Les voisins du coin n'ont pas dĂ©neigĂ©. Au lieu de ronchonner, j'ai dĂ©neigĂ© une partie du trottoir. Quelques personnes m'ont remerciĂ©e. Quand je suis rentrĂ©e Ă  la maison, mon mari est aussi sorti pour dĂ©neiger un autre coin. Sois le changement que tu veux voir dans le monde.

      Pour le souper, j'ai préparé du tonkatsu. J'ai martelé des escalopes de porc et les ai panées. Mon mari a préparé des petits pak-choïs, y compris le pak-choï que j'ai oublié la derniÚre fois.

      Ensuite, j'ai travaillĂ© sur la confĂ©rence. J'ai tĂ©lĂ©chargĂ© toutes les vidĂ©os sur Toobnix et j'ai copiĂ© les discussions de l'IRC et de l'Etherpad vers les pages du wiki. J'ai créé une brĂšve fonction pour automatiser l'ajout des sous-titres aux vidĂ©os sur Toobnix. Seule la gestion de la liste de vidĂ©os reste manuelle. Peut-ĂȘtre que l'annĂ©e prochaine, je l'automatiserai aussi.

      À l'heure du coucher, ma fille est devenue grincheuse parce qu'elle a rĂ©alisĂ© qu'elle avait besoin de faire la lessive. C'Ă©tait trop tard pour commencer. Elle avait d'autres vĂȘtements, donc ce n'Ă©tait pas grave, pourtant elle s'est barricadĂ©e dans sa chambre et a boudĂ©. Eh bien, elle doit apprendre Ă  gĂ©rer ces choses et ces Ă©motions. Peut-ĂȘtre que je peux me coucher un peu plus tĂŽt aujourd'hui.

      Mes entrĂ©es de journal deviennent de plus en plus longues. Je me demande si je vais arriver Ă  les caser dans mon rendez-vous d'une heure avec ma tutrice. Je ne peux pas parler plus rapidement parce que je vais juste ancrer les erreurs. C'est un problĂšme de riche, bien sĂ»r…

      You can e-mail me at sacha@sachachua.com.

    2. 🔗 sacha chua :: living an awesome life 2025-12-29 Emacs news rss

      Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, Mastodon #emacs, Bluesky #emacs, Hacker News, lobste.rs, programming.dev, lemmy.world, lemmy.ml, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar, and emacs-devel. Thanks to Andrés Ramírez for emacs-devel links. Do you have an Emacs-related link or announcement? Please e-mail me at sacha@sachachua.com. Thank you!

      You can comment on Mastodon or e-mail me at sacha@sachachua.com.

    3. 🔗 News Minimalist 🐱 Israel recognizes Somaliland + 9 more stories rss

      In the last 6 days ChatGPT read 179863 top news stories. After removing previously covered events, there are 10 articles with a significance score over 5.5.

      [5.7] Israel becomes the first country to formally recognize Somaliland —bbc.com(+168)

      Israel has become the first nation to formally recognize Somaliland as an independent state, with Prime Minister Netanyahu announcing plans to establish full diplomatic ties and expand bilateral cooperation.

      Somaliland will join the Abraham Accords and exchange ambassadors with Israel. However, Somalia, Egypt, Turkey, and Djibouti condemned the move, stating it violates Somalia's sovereignty and sets a dangerous international precedent that could undermine regional stability and territorial integrity.

      Somaliland declared independence in 1991 but remained internationally isolated. This recognition follows a controversial maritime deal with Ethiopia and occurs as Israel seeks to expand its diplomatic influence across the continent.

      [5.7] Scientists reverse Alzheimer's in mice and restore memory —tribuneindia.com(+14)

      Researchers successfully reversed advanced Alzheimer's disease in mice by restoring brain energy balance, challenging long-held beliefs that the condition is irreversible and demonstrating potential for significant cognitive recovery.

      By normalizing levels of the energy molecule NAD+ using a specific compound, the study repaired brain pathology and restored cognitive function in mice. This approach targets energy failure, which researchers found is significantly more severe in humans with Alzheimer’s.

      Highly covered news with significance over 5.5

      [6.0] India's space agency deploys BlueBird satellite for global space-to- phone 4G and 5G broadband — economictimes.indiatimes.com (+28)

      [6.0] US imposes visa bans on five Europeans over EU's Digital Services Act — err.ee (Italian) (+58)

      [5.9] Israel deploys Iron Beam laser air defense system nationwide — jpost.com (+12)

      [5.8] Thai and Cambodian diplomats meet in China to solidify ceasefire — abcnews.go.com (+68)

      [5.7] Poland builds €2 billion anti-drone fortifications along its eastern border — theguardian.com (+17)

      [5.5] Algerian legislators declare French colonization a crime, demand restitution — abcnews.go.com (+9)

      [5.6] Scientists discover superionic phase in Earth's inner core — farodevigo.es (Spanish) (+6)

      [5.8] China's Maglev train sets world record reaching 700 km/h — mathrubhumi.com (Malayalam) (+3)

      Thanks for reading!

      — Vadim


      You can track significant news in your country with premium.


      Powered by beehiiv

    4. 🔗 r/wiesbaden Good barbers in Wiesbaden? rss

      I really need a good barber, i tried many but most of them ruin me. I thought language barrier was the problem but even when i come with pics they do me completely wrong.

      Idc if its more expensive. Thanks in advance!

      submitted by /u/vedad17
      [link] [comments]

    5. 🔗 ArchiveBox/ArchiveBox v0.8.6rc1 release

      fix archivebox add

    6. 🔗 r/reverseengineering Detect It Easy in the browser — fully local static analysis, no uploads rss
    7. 🔗 r/reverseengineering /r/ReverseEngineering's Weekly Questions Thread rss

      To reduce the amount of noise from questions, we have disabled self-posts in favor of a unified questions thread every week. Feel free to ask any question about reverse engineering here. If your question is about how to use a specific tool, or is specific to some particular target, you will have better luck on the Reverse Engineering StackExchange. See also /r/AskReverseEngineering.

      submitted by /u/AutoModerator
      [link] [comments]

    8. 🔗 r/LocalLLaMA Tencent just released WeDLM 8B Instruct on Hugging Face rss

      Tencent just released WeDLM 8B Instruct on Hugging Face | Hugging face: https://huggingface.co/tencent/WeDLM-8B-Instruct A diffusion language model that runs 3-6× faster than vLLM-optimized Qwen3-8B on math reasoning tasks. submitted by /u/Difficult-Cap-7527
      [link] [comments]
      ---|---

    9. 🔗 Imrglop/IDA-FastAnalysis v0.1.0-rc1 release

      Pre-release for IDA 9.2, IDA 8.3

      Warning: Not extensively tested. It's advised to make backups of any IDA databases before opening them with this plugin.

      IDA Version | Supported targets
      ---|---
      9.x | x64, ARM64
      8.x | x64

    10. 🔗 Imrglop/IDA-FastAnalysis v0.1.0-rc2 release

      Pre-release for IDA 9.2, IDA 8.3

      Warning: Not extensively tested. It's advised to make backups of any IDA databases before opening them with this plugin.

      IDA Version | Supported targets
      ---|---
      9.x | x64, ARM64
      8.x | x64

      Full Changelog : 0.1.0-rc1...v0.1.0-rc2

    11. 🔗 r/LocalLLaMA Meta released RPG, a research plan generation dataset on Hugging Face rss

      Meta released RPG, a research plan generation dataset on Hugging Face | 22k tasks spanning ML, Arxiv and PubMed, complete with evaluation rubrics and Llama-4 reference solutions for training AI co-scientists submitted by /u/Difficult-Cap-7527
      [link] [comments]
      ---|---

    12. 🔗 matklad The Second Great Error Model Convergence rss

      The Second Great Error Model Convergence

      Dec 29, 2025

      I feel like this has been said before, more than once, but I want to take a moment to note that most modern languages converged to the error management approach described in Joe Duffy’s The Error Model, which is a generational shift from the previous consensus on exception handling.

      C++, JavaScript, Python, Java, C# all have roughly equivalent throw, catch, finally constructs with roughly similar runtime semantics and typing rules. Even functional languages like Haskell, OCaml, and Scala feature exceptions prominently in their grammar, even if their usage is frowned upon by parts of the community.

      But the same can be said about Go, Rust, Swift, and Zig! Their error handling is similar to each other, and quite distinct from the previous bunch, with Kotlin and Dart being notable, ahem, exceptions. Here are some commonalities of modern error handling:

      First , and most notably, functions that can fail are annotated at the call side. While the old way looked like this:

      Widget widget = make_widget();
      

      the new way is

      let widget = make_widget()?;
      
      
      const widget = try make_widget();
      
      
      let widget = try makeWidget()
      
      
      widget, err := makeWidget()
      if err != nil {
          return err
      }
      

      There’s a syntactic marker alerting the reader that a particular operation is fallible, though the verbosity of the marker varies. For the writer, the marker ensures that changing the function contract from infallible to fallible (or vice versa) requires changing not only the function definition itself, but the entire call chain. On the other hand, adding a new error condition to a set of possible errors of a fallible function generally doesn’t require reconsidering rethrowing call-sites.

      Second , there’s a separate, distinct mechanism that is invoked in case of a detectable bug. In Java, index out of bounds or null pointer dereference (examples of programming errors) use the same language machinery as operational errors. Rust, Go, Swift, and Zig use a separate panic path. In Go and Rust, panics unwind the stack, and they are recoverable via a library function. In Swift and Zig, panic aborts the entire process. Operational error of a lower layer can be classified as a programming error by the layer above, so there’s generally a mechanism to escalate an erroneous result value to a panic. But the opposite is more important: a function which does only “ordinary” computations can be buggy, and can fail, but such failures are considered catastrophic and are invisible in the type system, and sufficiently transparent at runtime.

      Third , results of fallible computation are first-class values, as in Rust’s Result<T, E>. There’s generally little type system machinery dedicated exclusively to errors and try expressions are just a little more than syntax sugar for that little Go spell. This isn’t true for Swift, which does treat errors specially. For example, the generic map function has to explicitly care about errors, and hard-codes the decision to bail early:

      func map<T, E>(
          _ transform: (Self.Element) throws(E) -> T
      ) throws(E) -> [T] where E : Error
      

      Swift does provide first-classifier type for errors.

      Should you want to handle an exception, rather than propagate it, the handling is localized to a single throwing expression to deal with a single specific errors, rather than with any error from a block of statements:

      let widget = match make_widget() {
          Ok(it) => it,
          Err(WidgetError::NotFound) => default_widget(),
      };
      
      
      let widget = make_widget() catch |err| switch (err) {
          error.NotFound => default_widget(),
      };
      

      Swift again sticks to more traditional try catch, but, interestingly, Kotlin does have try expressions.


      The largest remaining variance is in what the error value looks like. This still feels like a research area. This is a hard problem due to a fundamental tension:

      • On the one hand, at lower-levels you want to exhaustively enumerate errors to make sure that:
        • internal error handling logic is complete and doesn’t miss a case,
        • public API doesn’t leak any extra surprise error conditions.
      • On the other hand, at higher-levels, you want to string together widely different functionality from many separate subsystems without worrying about specific errors, other than:
        • separating fallible functions from infallible,
        • ensuring that there is some top-level handler to show a 500 error or an equivalent.

      The two extremes are well understood. For exhaustiveness, nothing beats sum types (enums in Rust). This I think is one of the key pieces which explains why the pendulum seemingly swung back on checked exceptions.

      In Java, a method can throw one of the several exceptions:

      void f() throws FooException, BarException;
      

      Critically, you can’t abstract over this pair. The call chain has to either repeat the two cases, or type-erase them into a superclass, losing information. The former has a nasty side-effect that the entire chain needs updating if a third variant is added. Java-style checked exceptions are sensitive to “N to N + 1” transitions. Modern value-oriented error management is only sensitive to “0 to 1” transition.

      Still, if I am back to writing Java at any point, I’d be very tempted to standardize on coarse-grained throws Exception signature for all throwing methods. This is exactly the second well understood extreme: there’s a type- erased universal error type, and the “throwableness” of a function contains one bit of information. We only care if the function can throw, and the error itself can be whatever. You still can downcast dynamic error value handle specific conditions, but the downcasting is not checked by the compiler. That is, downcasting is “save” and nothing will panic in the error handling mechanism itself, but you’ll never be sure if the errors you are handling can actually arise, and whether some errors should be handled, but aren’t.

      Go and Swift provide first-class universal errors, like Midori. Starting with Swift 4, you can also narrow the type down.

      Rust doesn’t really have super strong conventions about the errors, but it started with mostly enums, and then failure and anyhow shone spotlight on the universal error type.

      But overall, it feels like “midpoint” error handling is poorly served by either extreme. In larger applications, you sorta care about error kinds, and there are usually a few place where it is pretty important to be exhaustive in your handling, but threading necessary types to those few places infects the rest of the codebases, and ultimately leads to “a bag of everything” error types with many “dead” variants.

      Zig makes an interesting choice of assuming mostly closed-world compilation model, and relying on cross-function inference to learn who can throw what.


      What I find the most fascinating about the story is the generational aspect. There really was a strong consensus about exceptions, and then an agreement that checked exceptions are a failure, and now, suddenly, we are back to “checked exceptions” with a twist, in the form of “errors are values” philosophy. What happened between the lull of the naughts and the past decade industrial PLT renaissance?

  3. December 28, 2025
    1. 🔗 IDA Plugin Updates IDA Plugin Updates on 2025-12-28 rss

      IDA Plugin Updates on 2025-12-28

      New Releases:

      Activity:

    2. 🔗 r/wiesbaden Feinkost Kilic im LuFo rss

      Weiß jemand, ob es den Feinkost Kilic unten im Luisenforum grundsĂ€tzlich noch gibt? Die letzten Male als ich da war, hatte er zu..

      submitted by /u/hayzle_
      [link] [comments]

    3. 🔗 r/reverseengineering [Challenge] ShinySpider - Go Ransomware Reverse Engineering rss
    4. 🔗 r/LocalLLaMA Senator in Tennessee introduces bill to felonize making AI "act as a companion" or "mirror human interactions" rss

      Call (202) 224-3121 for the Capitol switchboard to contact your representative. Tell them you oppose anything similar.

      The bill:
      https://legiscan.com/TN/bill/SB1493/2025

      Quotes from the bill (emphasis mine):

      It is an offense for a person to knowingly train artificial intelligence to:
      (3) Provide emotional support, including through open-ended conversations with a user;
      (4) Develop an emotional relationship with, or otherwise act as a companion to, an individual;
      (6) Otherwise act as a sentient human or mirror interactions that a human user might have with another human user , such that an individual would feel that the individual could develop a friendship or other relationship with the artificial intelligence;
      (8) Simulate a human being , including in appearance, voice, or other mannerisms.

      "Train":
      (A) Means utilizing sets of data and other information to teach an artificial intelligence system to perceive, interpret, and learn from data, such that the A.I. will later be capable of making decisions based on information or other inputs provided to the A.I.
      (B) Includes development of a large language model when the person developing the large language model knows that the model will be used to teach the A.I.

      submitted by /u/CanineAssBandit
      [link] [comments]

    5. 🔗 matklad Parsing Advances rss

      Parsing Advances

      Dec 28, 2025

      I find myself writing yet another toy parser, as one does during a Christmas break. It roughly follows Resilient LL Parsing Tutorial. Not because I need resilience, but mostly because I find producing a syntax tree and a collection of diagnostics a more natural fit for the problem than bailing out on the first error.

      One practical pitfall with the approach is infinite loops/recursion. Resilience sometimes means not consuming a token, and, if you do that in a loop or a Pratt recursive call, you’ll get yourself an annoying to debug error:

      running 1 test from ./src/corpus_test.ts
      corpus ...Task test deno test --allow-read=./src/corpus --allow-write=./src/corpus "--" "--update"
      Check src/corpus_test.ts
      
      <--- Last few GCs --->
      4,[26641:0x9d1574000]     7390 ms: Mark-Compact (reduce) 3924.9 (3927.3) -> 3924.9 (3926.3) MB, pooled: 0.0 MB, 1224.00 / 0.00 ms (+ 0.3 ms in 1 steps since start of marking, biggest step 0.3 ms, walltime since start of marking 1232 ms) (average mu = 0.200,[26641:0x9d1574000]     8804 ms: Mark-Compact (reduce) 4009.9 (4011.3) -> 4009.9 (4011.3) MB, pooled: 0.0 MB, 1294.67 / 0.00 ms (+ 0.2 ms in 1 steps since start of marking, biggest step 0.2 ms, walltime since start of marking 1302 ms) (average mu = 0.141,
      
      
      #
      # Fatal JavaScript out of memory: Ineffective mark-compacts near heap limit
      #
      ==== C stack trace ===============================
      
          0   deno                                0x0000000102ce8404 v8::base::debug::StackTrace::StackTrace() + 24
          1   deno                                0x0000000102ceeb9c v8::platform::(anonymous namespace)::PrintStackTrace() + 24
          2   deno                                0x0000000102ce4094 v8::base::FatalOOM(v8::base::OOMType, char const*) + 68
          3   deno                                0x0000000102d3a7a8 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) + 296
          4   deno                                0x0000000102f37378 v8::internal::Heap::stack() + 0
          5   deno                                0x0000000102f3581c v8::internal::Heap::CheckMemoryPressure() + 0
          6   deno                                0x0000000102ead4f8 v8::internal::StackGuard::HandleInterrupts(v8::internal::StackGuard::InterruptLevel) + 504
          7   deno                                0x000000010335fe44 v8::internal::Runtime_HandleNoHeapWritesInterrupts(int, unsigned long*, v8::internal::Isolate*) + 304
          8   deno                                0x00000001043887b4 Builtins_CEntry_Return1_ArgvOnStack_NoBuiltinExit + 84
          9   ???                                 0x0000000126997874 0x0 + 4942559348
          10  ???                                 0x000000012698a758 0x0 + 4942505816
      ...
      

      For a concrete example, you might parse function argument list using code like this:

      const result: ast.Expression[] = [];
      p.expect("(");
      while (!p.eof() && !p.at(")")) {
        result.push(expression(p));
        if (!p.at(")")) p.expect(",");
      }
      p.expect(")");
      return result;
      

      The implicit contract here is that expression consumes at least one token, even if there are errors in the source code. If there’s some token that makes expression bail without consuming anything, the code loops forever, and you’ll need a debugger to get at the stack trace!

      The way I solved this issue traditionally is via a combination of two techniques:

      Fuel: parser has a fuel: Cell<u32> field, which is decremented even by “readonly” lookahead methods, and topped up every time the parser consumes a token. Fuel is useful to make you parser crash somewhat cleanly, though the crash is typically still removed from problematic function by several stack frames.

      The second technique is to maintain a mental map of functions which always consume at least one token of input, and functions which might bail without consuming anything. And, whenever you write a loop or a recursive call, consult this map to be sure to call at least one token-consuming function. Hard and error prone!

      Well, I think I’ve figured something better today! You can assert that parser did advance when you expect it to. The smaller benefit here is that if parser didn’t advance, you get an immediate error. The bigger benefit is that these asserts materialize the mental map of advancing functions in the source code, so it doesn’t have to be mental anymore!

      This seems like an obvious idea in retrospect, but, well, took me more than one parser to figure it out!

      Concretely, I came up with the following base parser API:

      class Parser {
        private tokens: ast.Token[];
        private index: number = 0;
        private advances: number[] = [];
      
        advance_push() {
          this.advances.push(this.index);
        }
        advance_pop() {
          const advance = this.advances.pop();
          assert(advance !== undefined);
          assert(advance < this.index);
        }
        advance_drop() {
          const advance = this.advances.pop();
          assert(advance !== undefined);
        }
      }
      

      And here is the buggy function that lead to the error at the start of the article:

      function expression_pratt(
        p: Parser,
        left: ast.TokenTag,
      ): ast.Expression {
        let lhs: ast.Expression = expression_delimited(p);
      
        while (p.at("(")) {
          lhs = expression_call(p, lhs);
        }
      
        while (true) {
          const right = p.token();
          if (expression_pratt_right_binds_tighter(left, right.tag)) {
            const rhs = expression_pratt(p, right.tag);
            lhs = {
              tag: "ExpressionBinary",
              location: right.location,
              operator: right.tag as ast.BinaryOperation,
              lhs,
              rhs,
            };
          } else {
            return lhs;
          }
        }
      }
      

      The same function, but with advanced assertions:

      function expression_pratt(
        p: Parser,
        left: ast.TokenTag,
      ): ast.Expression {
        let lhs: ast.Expression = expression_delimited(p);
      
        while (p.at("(")) {
          lhs = expression_call(p, lhs);
        }
      
        while (true) {
          p.advance_push();
          const right = p.token();
          if (expression_pratt_right_binds_tighter(left, right.tag)) {
            const rhs = expression_pratt(p, right.tag);
            lhs = {
              tag: "ExpressionBinary",
              location: right.location,
              operator: rhs.tag as ast.BinaryOperation,
              lhs,
              rhs,
            };
          } else {
            p.advance_drop();
            return lhs;
          }
          p.advance_pop();
        }
      }
      

      The new error message:

      running 1 test from ./src/corpus_test.ts
      corpus ... FAILED (11ms)
      
       ERRORS
      
      corpus => ./src/corpus_test.ts:47:6
      error: Error: assertion failed
        if (!condition) throw new Error("assertion failed");
                              ^
          at assert (./src/stdx.ts:2:25)
          at Parser.advance_pop (./src/parse.ts:132:5)
          at expression_pratt (./src/parse_grammar.ts:169:7)
          at expression (./src/parse_grammar.ts:143:10)
          at expression_block (./src/parse_grammar.ts:305:21)
          at declaration_fun (./src/parse_grammar.ts:73:7)
          at declaration (./src/parse_grammar.ts:25:12)
          at Module.file (./src/parse_grammar.ts:10:15)
          at Module.parse (./src/parse.ts:13:18)
          at ast_dump (./src/corpus_test.ts:85:22)
      

      and the fix:

        while (true) {
          p.advance_push();
          const right = p.token();
          if (expression_pratt_right_binds_tighter(left, right.tag)) {
            p.bump();
            const rhs = expression_pratt(p, right.tag);
            lhs = {
              tag: "ExpressionBinary",
              location: right.location,
              operator: rhs.tag as ast.BinaryOperation,
              lhs,
              rhs,
            };
          } else {
            p.advance_drop();
            return lhs;
          }
          p.advance_pop();
        }
      
  4. December 27, 2025
    1. 🔗 IDA Plugin Updates IDA Plugin Updates on 2025-12-27 rss

      IDA Plugin Updates on 2025-12-27

      New Releases:

      Activity:

      • DriverFuckBuddy
        • 1fa2d79b: Sync auto-label-comment-prs.yml from .github repo
        • a33dfdfa: Sync auto-gpt5-implementation.yml from .github repo
        • 76f90ee6: Sync auto-feature-request.yml from .github repo
        • 146b21d7: Sync auto-copilot-test-review-playwright.yml from .github repo
        • 5da89666: Sync auto-copilot-playwright-auto-test.yml from .github repo
        • 91696b8e: Sync auto-copilot-org-playwright-loopv2.yaml from .github repo
        • 944e8b33: Sync auto-copilot-org-playwright-loop.yaml from .github repo
        • 208ae4d4: Sync auto-copilot-functionality-docs-review.yml from .github repo
        • e0272843: Sync auto-copilot-code-cleanliness-review.yml from .github repo
        • b02076b3: Sync auto-complete-cicd-review.yml from .github repo
        • 3c711f9d: Sync auto-close-issues.yml from .github repo
        • a9192fed: Sync auto-bug-report.yml from .github repo
        • 4226636d: Sync auto-assign-pr.yml from .github repo
        • a9b4e460: Sync auto-assign-copilot.yml from .github repo
        • 3c103a5e: Sync auto-amazonq-review.yml from .github repo
      • IDA-pro-mcp-Optimize
        • 39d07de7: fix(core): resolve critical bugs in MCP plugin
      • idaguides
        • 19be119a: Update README.md
        • eba813f5: fixed: broken indent level with collapsed blocks
    2. 🔗 r/LocalLLaMA NVIDIA Drops Pascal Support On Linux, Causing Chaos On Arch Linux rss

      NVIDIA Drops Pascal Support On Linux, Causing Chaos On Arch Linux | submitted by /u/HumanDrone8721
      [link] [comments]
      ---|---

    3. 🔗 Locklin on science Winter Q4 2025 books rss

      The Kaufmann Protocol Sandra Kaufmann. I saw this lady on youtube somewhere, and she seemed half nuts, so I bought her book. Mostly it’s a rough explanation of some of the human biological system and a list of supplements that good for stuff that breaks down as you get older. It listed some things I […]

    4. 🔗 r/reverseengineering Halo Decompilation Project: Project to study and re-implement the iconic Xbox launch title Halo: Combat Evolved rss
    5. 🔗 r/reverseengineering Barnyard the video game decompilation is able to partially load and render terrains and to load the main menu rss
    6. 🔗 r/LocalLLaMA Head of Engineering @MiniMax__AI on MiniMax M2 int4 QAT rss
    7. 🔗 r/wiesbaden GetrĂ€nkeeinkauf (HobGoblin) rss

      Ich suche ein Craft Beer namens Hob Goblin - jemand ne Idee, wo man das um Wiesbaden bekommen kann?

      submitted by /u/RecognitionOwn4214
      [link] [comments]

    8. 🔗 r/reverseengineering Analyzing and Exploiting Branch Mispredictions in Microcode rss