Presidenti i organizatës C++ Alliance shpalli punën mbi specifikimin që shton në gjuhën C++ zgjerime për punë të sigurt me kujtesën, të ngjashme me mundësitë e realizuara në gjuhën Rust. Për realizimin e projektit është angazhuar Shawn Baxter, autori i kompilatorit eksperimental të C++ Circle, i cili zhvillon ide për përmirësimin e sigurisë së kodit C++, që realizohen në anën e kompajlerit pa përdorur mbledhjen e mbetjeve. Në kuadër të projektit, Shawn publikoi një dokument me analizën e aplikueshmërisë së masave të ndryshme mbrojtëse të propozuara në gjuhën Rust, duke vlerësuar mundësinë e realizimit të tyre për C++ dhe propozime për shtimin e zgjerimeve në gjuhën C++ që rrisin sigurinë e kodit.
Vërehet se iniciativa është lançuar si përgjigje ndaj nevojës gjithnjë në rritje midis zhvilluesve për metoda të sigurta programimi dhe synon integrimin e mundësive të reja në gjuhën C++, të cilat lejojnë mbrojtjen nga gabimet e zakonshme që ndodhin gjatë punës me kujtesën, siç janë qasjet në kujtesë të liruar dhe daljet jashtë kufijve të bufeve të ndara. Shtesat zhvillohen si opsione, të cilat do të lejojnë kalimin gradual të projekteve në metoda të sigurta, duke ruajtur njëkohësisht përputhshmërinë me kodin tashmë ekzistues 'jo të sigurt'.
Siguria e punës me kujtesën propozohet të sigurohet përmes mekanizmave të realizuar në stadin e kompajlimit dhe që nuk sjellin shpenzime shtesë, të zakonshme për gjuhët që përdorin mbledhësit e mbetjeve. Si metodat kryesore të propozuara për sigurimin e sigurisë përmenden ndjekja e pronësisë së objekteve, kontrolli i huazimeve të variablave (borrow checker), përdorimi i kontekstit të sigurt (safe), krijimi i interface-ve std2::send dhe std2::sync. Puna gjithashtu përfshin krijimin e një varianti të mbrojtur të bibliotekës standarde, duke ofruar realizime të algoritmeve dhe strukturave të dhënash që lejojnë punën e sigurt me kujtesën.
Burimi: opennet.ru
