Në listën e shpërndarjes për zhvilluesit e bërthamës Linux, ka rinisur diskutimi i filluar gjashtë vjet më parë mbi perspektivat e përdorimit të kodit modern në C++ në bërthamën Linux, përveç përdorimit aktual të gjuhës C me inserte assembler dhe promovimin e gjuhës Rust. Fillimisht, tema e zhvillimit të bërthamës në C++ u ngrit në vitin 2018 nga një inxhinier i Red Hat, i cili publikoi një grup prej 45 patch-e për përdorimin e template-ve, klasave të trashëguara dhe mbingarkimit të funksioneve C++ në kodin e bërthamës si një shaka më 1 prill.
Me iniciativën për të vazhduar diskutimin doli Hans Peter Anvin, një nga zhvilluesit kryesorë të bërthamës në kompaninë Intel dhe krijues i projekteve si syslinux, klibc dhe LANANA, i cili zhvilloi për bërthamën Linux një sistem automontimi, implementimin e RAID 6, driverin CPUID dhe x32 ABI. Sipas Anvin, i cili është autor i shumë makrove dhe inserteve assembler në bërthamë, që nga viti 1999, gjuhët C dhe C++ kanë avancuar shumë në zhvillimin e tyre dhe gjuha C++ është bërë më e përshtatshme se C për zhvillimin e bërthamave të sistemeve operative.
Mundësitë, për të cilat së fundmi ishte e nevojshme të angazhoheshin zgjerime specifike GCC, tani realizohen lehtësisht në C++ standarde, dhe në shumë raste përdorimi i C++ do të lejojë përmirësimin e infrastrukturës pa ndryshime globale në kod. Si e pajisur minimale përmendet përdorimi i specifikimit C++14, i cili përfshin mjetet e nevojshme për metaprogramimin, ndërsa si e dëshiruar përmendet përdorimi i specifikimit C++20, i cili përmban mbështetje për konceptet që mund të përjashtojnë shfaqjen e shumë gabimeve.
Anvin beson se C++ është më e preferueshme se Rust, pasi kjo e fundit ndryshe tërësisht nga gjuha C në sintaksë, është e pazakontë për zhvilluesit aktualë të bërthamës dhe nuk lejon shkruarjen graduale të kodit (në rastin e gjuhës C++ mund të kesh një pjesë të kodit të shkruar në C, pasi kodi C mund të kompilojë si C++). Në mbështetje të përdorimit të C++ në bërthamë janë shprehur gjithashtu Jiri Slaby nga kompania SUSE dhe David Howells nga Red Hat.
Burimi: opennet.ru
