프로그래밍 언어 록(Roc)의 컴파일러 개발팀이 지난 1년 반 동안 진행해 온 대규모 재작성 프로젝트를 성공적으로 마무리했습니다. 기존 30만 줄의 러스트(Rust) 코드를 지그(Zig) 언어로 전환하는 작업이었으며, 최근 원본 컴파일러와 기능적으로 완벽히 동일한 수준에 도달하는 중요한 이정표를 세웠습니다. 이는 번(Bun) 프로젝트가 지그에서 러스트로 전환한 사례와는 반대 방향의 움직임으로, 컴파일러 개발 커뮤니티에서 큰 주목을 받고 있습니다.
이번 재작성을 통해 록 컴파일러는 여러 핵심 기능을 추가하고 성능을 개선했습니다. 대표적으로 개발 중 코드 변경 시 자동으로 반영되는 핫 코드 로딩(Hot Code Loading) 기능이 도입되어 개발 생산성을 크게 높였습니다. 또한, 다양한 운영체제와 아키텍처를 지원하는 크로스 컴파일(Cross-Compiled) 기능이 강화되어, 맥(Mac)에서 리눅스(Linux)용 정적 바이너리를 쉽게 빌드할 수 있게 되었습니다. 실제 사례로, 록으로 개발된 웹어셈블리(WebAssembly) 게임 '로치 버드(Rocci Bird)'는 새로운 컴파일러를 통해 바이너리 크기가 기존의 절반 수준인 31KB로 줄어들었습니다. 이는 컴파일러의 효율성이 크게 향상되었음을 보여줍니다.
이번 러스트-지그 전환은 단순히 언어를 바꾼 것을 넘어, 록 언어의 설계 철학을 반영하고 미래 확장성을 확보하기 위한 전략적 결정으로 보입니다. 특히 지그는 저수준 제어와 컴파일러 친화적인 특성으로 인해 고성능 시스템 프로그래밍 분야에서 주목받고 있으며, 록 컴파일러 팀은 이를 통해 더 작고 효율적인 바이너리를 생성하고 개발자에게 강력한 기능을 제공할 수 있게 되었습니다. 이러한 움직임은 컴파일러 및 시스템 프로그래밍 분야에서 러스트 외에 지그가 강력한 대안으로 부상하고 있음을 시사하며, 개발자들이 특정 언어에 얽매이지 않고 프로젝트의 목표에 가장 적합한 도구를 선택하는 유연한 접근 방식의 중요성을 강조합니다.