Супрацоўнік кампаніі Google развівае мову праграмавання Carbon, які пазіцыянуецца як эксперыментальная замена C++, якая пашырае дадзеную мову і ўхіляе наяўныя недахопы. Мова падтрымлівае базавую пераноснасць з C++, можа інтэгравацца з наяўным кодам на C++ і падае прылады для спрашчэння міграцыі існых праектаў, аўтаматычна якія транслююць C++-бібліятэкі ў код на мове Carbon. Напрыклад, можна перапісаць на Carbon пэўную бібліятэку і выкарыстоўваць яе ў існуючым праекце на З++. Кампілятар Carbon напісаны з выкарыстаннем LLVM і напрацовак Clang. Напрацоўкі праекту распаўсюджваюцца пад ліцэнзіяй Apache 2.0.
Асноўныя асаблівасці Carbon:
- Прадукцыйнасць выніковага кода, супастаўная з З ++, з захаваннем магчымасці нізкаўзроўневага доступу да адрасоў і дадзеным на бітавым узроўні.
- Пераноснасць з існым кодам на C++, уключаючы ўспадкоўванне класаў і шаблоны.
- Хуткая зборка і магчымасць інтэграцыі з існуючымі зборачнымі сістэмамі для C++.
- Спрашчэнне міграцыі паміж рознымі версіямі Carbon.
- Прадастаўленне сродкаў для бяспечнай працы з памяццю, выкарыстанне якіх дазваляе абараніцца ад уразлівасцяў, выкліканых зваротам да вобласці памяці пасля яе вызвалення, разнайменаваннем нулявых паказальнікаў і выхадам за межы буфера.
Крыніца: opennet.ru