Pont ezért nem értem, ezt a fene nagy ellenállást C programozók részéről.
Szubjektív: olvashatatlan a kód, olyan, mintha szándékosan minden szimbólumot és ASCII karaktert beleerőszakoltak volna. (De keress rá, nem vagyok egyedül ezzel)
Objektív: tetves lassú a fordítás, és lassú a fejlesztés. Nem tudod megkerülni az ellenőrzést, ezért a legapróbb módosítás után is órákat kell várni, míg lefordul, csak hogy kiderüljön, komplett refaktor szükséges a borrow checker miatt. Ahogy egy Rust fejlesztő megjegyezte: Programming in Rust is like being in an emotionally abusive relationship. Rust screams at you all day, every day.
C-nél simán működik az, hogy akkor kapcsolod be a sanitizert, meg tesztelsz valgrind-el, amikor jólesik, nem akasztja meg a rapid-development-cycle-t. Nem csipázom azt a hozzáállást, hogy csak mert akad pár faszkalap, aki nem teszteli a kódját, ezért szivassunk mindenkit az állandó és folytonos ellenőrzésekkel.
Ráadásul mindezt fordítás időben nem futásidőben.
Csakhogy ez nem lehetséges. Mi van, ha a mutató egy adatfájlból ered? (Pl. ELF program header-ben a section table mutatója). Ez nem lehet fordítási időben ellenőrizni. Viszont tévesen azt hiszed, hogy a Rust fordító ezt az ellenőrzést megtette helyetted, úgyhogy lespórolod a futás idejű ellenőrzést, és máris kész a baj!