어떤 븅딱같은 코드가 있다 이런걸 얘기하려는건 아니고





1. 언어 내부에서도 갈린 커뮤니티


exception 쓰지 말자, virtual function 쓰지 말자, RAII 써라 등 같은 언어인데 서로 미묘하게 섞이지 못하는 부분이 있음




2. 표준 라이브러리 같지 않은 표준 라이브러리


std 가 std 역할을 못하고 있음


사소한 컨테이너조차 도메인별로 자기들이 만들어서 씀


최근 ladybird 코드 봤는데 여긴 스마트 포인터도 만들어서 쓰더라

7ced8076b58361f63aee98a518d604030fd129bb922286ff6a59


3. 시장을 지배하는 패키지 매니저의 부재


자바의 Maven, Kotlin의 Gradle, Rust의 Cargo 같은게 없음


개발자들이 라이브러리를 만들고 쉽게 공유할 수 있어야 생태계가 커지는건데


아직도 소스코드 다운받아서 CMake로 직접 연결하고 본인이 트러블슈팅 하는 과정이 진입장벽을 크게 높임


Vcpkg나 Bazel이나 아무거나 일단 시장지배적인게 나와야 DX를 끌어올려 유입을 만들어야됨




4. 표준 컴파일러의 부재


gcc, clang, msvc 모두 다 다른 스펙, 다른 전처리기, 다른 표준 구현들이 있음


심지어 전처리기는 옛날에 C++ 표준도 아니고 C에서 물려받은 것도 있어서 난이도가 극상임


이건 C++ 발전에 명백히 걸림돌임






C++은 Rust로 바꿔야한다 이런말 굳이 할필요도 없이


어차피 20년 뒤쯤에는 유입도 없어서 자연스레 도태될거같음


커뮤니티도 너무 분열되서 누가 총대매고 개선시킬 가능성도 없음


C++ 자리가 누가 차지할진 모르겠지만 아무튼 내리막길 뿐일듯


20년뒤엔 c++은 망하고 unreal c++은 살아남아서 서로 다른 길 갈 가능성도 있어보임 ㅋㅋ