러스트(Rust) 언어로 개발된 C 컴파일러인 'Rucc'가 0.8.0 버전 출시와 함께 중요한 성과를 발표했습니다. Rucc는 이제 널리 사용되는 관계형 데이터베이스인 SQLite를 성공적으로 컴파일하고, 그 방대한 테스트 스위트를 거의 완벽하게 통과했습니다. 이는 Rucc가 단순한 예제 코드를 넘어 실제 복잡한 C 프로젝트를 처리할 수 있는 수준에 도달했음을 의미합니다.
개발자 tamnd에 따르면, Rucc는 SQLite의 'veryquick.test'를 -fsafety=detect 옵션으로 실행했을 때 33만 2천 개의 테스트 중 단 하나의 실패만 기록했습니다. 이 실패 역시 GCC(GNU Compiler Collection)로 빌드된 테스트 픽스처에서도 동일하게 발생한 것으로 확인되어, Rucc 자체의 결함이 아님을 시사합니다. Rucc는 최적화 옵션(-O0, -O2) 적용 여부와 모니터링 유무에 따라 네 가지 방식으로 테스트를 진행했으며, 모든 경우에 GCC와 동일한 결과를 보여주어 그 정확성을 입증했습니다.
이번 성과는 러스트 언어 생태계와 시스템 프로그래밍 분야에 큰 의미를 가집니다. 러스트는 메모리 안전성과 성능을 강점으로 내세우지만, 기존 C/C++ 코드베이스와의 상호 운용성 및 기존 도구 체인과의 통합은 여전히 중요한 과제입니다. Rucc와 같은 러스트 기반 C 컴파일러의 발전은 기존 C 프로젝트를 러스트 환경에서 빌드하고 관리할 수 있는 가능성을 열어주며, 궁극적으로 더 안전하고 신뢰할 수 있는 소프트웨어 개발에 기여할 수 있습니다. 이는 개발자들이 러스트의 장점을 활용하면서도 기존 C 코드의 방대한 라이브러리와 애플리케이션을 포기하지 않아도 되는 유연성을 제공할 것입니다.