Rust Hardcore : Un traceur de rayons sans allocation mémoire dynamique
Cet article détaille une étude de cas sur la création d’une application Rust utilisant uniquement une API minimale et artificiellement contrainte (pas d’allocation mémoire dynamique). L’auteur critique le RAII (Resource Acquisition Is Initialization) pour son manque d’organisation dans la gestion des ressources et propose un « mode hardcore » : diviser le programme en un binaire `std` et une bibliothèque `#![no_std] no_alloc`, en autorisant uniquement le binaire à demander directement des ressources au système d’exploitation. En utilisant un traceur de rayons jouet comme exemple, l’auteur explique méticuleusement la gestion des tampons de pixels, la parallélisation, l’allocateur de mémoire et l’analyse de scène dans ce « mode hardcore », aboutissant finalement à un traceur de rayons sans allocation mémoire dynamique.