백악관 ‘C/C++ 사용 중단’ 권고에… C++ 창안자 “프로파일로 메모리 안정성 난관 돌파하자”

최근 C++의 메모리 안전성 문제가 논란이 되면서, 트랩C(TrapC)와 세이프C++(Safe C++) 같은 프로젝트에 대한 관심이 높아지고 있다. 다양한 시도가 이어지고 있지만, 스트롭스트룹은 여전히 C++에서 프로파일을 도입하는 것이 안전성을 확보하는 핵심이라고 주장했다. 여기서 말하는 프로파일은 C++의 특정 기능을 제한하거나 조정하여, 더 안전한 코드를 작성할 수 있도록 하는 일련의 규칙이나 설정을 말한다. 직접적인 포인터 연산을 금지하거나 자동 메모리 관리가 되는 스마트 포인터만 허용하는 등의 가이드라인을 제시하는 것이다.
프로파일은 기존 기능에 대한 제한을 가하여 일정한 안전성을 보장할 수 있다. 스트롭스트룹은 2월 7일 국제표준화기구(ISO) C++ 위원회에 보낸 서한에서 C++의 타입 안전성과 자원 안전성, 특히 메모리 안전성이 C++이 처음부터 목표로 삼았던 요소라고 강조했다.
스트롭스트룹은 “C++이 당장 심각한 위기에 처한 것은 아니지만, 지금 행동하지 않고 다양한 형태의 안전성을 지원하는 유연한 프로파일 프레임워크를 도입하지 않는다면, C++는 점진적으로 입지가 줄어들 수 있다”라고 말했다. 그는 프로파일이 C++의 미래를 결정짓는 중요한 요소이며, 기존 코드를 깨뜨리지 않으며 새로운 기능을 도입하는 데 장애물이 되지 않는다고 설명했다. 또한, 프로파일 개념이 C++ 발전 과정에서 꾸준히 이어져 온 전통의 일부라고 밝혔다. 스트롭스트룹은 C++ 26에서 초기 프로파일을 도입하는 것을 지지해야 한다며, 이에 반하는 비호환적이고 임시방편적인 제한을 경계해야 한다고 지적했다.