Rust Hardcore: Um Ray Tracer sem Alocação Dinâmica de Memória

2025-01-30

Esta publicação detalha um estudo de caso sobre a escrita de um aplicativo Rust usando apenas uma API mínima, artificialmente restrita (sem alocação dinâmica de memória). O autor critica o RAII (Resource Acquisition Is Initialization) por levar a um gerenciamento de recursos desorganizado e propõe um "modo hardcore": dividir o programa em um binário `std` e uma biblioteca `#![no_std] no_alloc`, permitindo apenas que o binário solicite recursos diretamente do SO. Usando um ray tracer de brinquedo como exemplo, o autor explica meticulosamente o tratamento de buffers de pixels, paralelização, o alocador de memória e a análise de cena neste "modo hardcore", atingindo, em última análise, um ray tracer sem alocação dinâmica de memória.

Desenvolvimento