자바스크립트 런타임(JavaScript runtime) Bun의 초기 Zig 버전 코드를 기반으로 한 새로운 프로젝트 'Buz'가 공개되어 개발자 커뮤니티의 주목을 받고 있습니다. Buz는 Bun이 Rust로 전환하기 전 마지막 Zig 커밋을 포크(fork)하여, 현대적인 Zig 언어와 개발 방식을 적용해 코드베이스를 개선하고 있습니다. 이 프로젝트의 핵심 목표는 Bun의 드롭인(drop-in) 대체재가 되는 동시에, 더 깔끔하고 유지보수하기 쉬운 코드베이스를 구축하는 것입니다.
Buz 프로젝트의 개발자는 Bun 코드베이스에서 11,000줄 이상의 불필요한 코드를 제거하고, 여러 부분을 재작성하여 Zig 표준 라이브러리(stdlib)에 더 의존하도록 만들었습니다. 특히, 전체 빌드 그래프를 `build.zig` 파일로 통합하여 1초 미만의 증분 빌드(incremental build)를 가능하게 한 점이 특징입니다. 이는 개발 과정에서 코드 변경 후 다시 빌드하는 시간을 획기적으로 단축시켜 개발자 경험을 크게 향상시킵니다. 또한, Bun의 새로운 테스트들을 가져와 프로젝트의 안정성과 기능 커버리지를 높이는 데 주력하고 있습니다.
이 프로젝트는 대규모 언어모델(LLM)을 적극적으로 활용하여 코드베이스를 정리하고 기술 부채(technical debt)를 줄이는 데 집중하고 있습니다. 개발자는 Bun의 기존 코드베이스를 'AI 슬롭(slop) 프로젝트'라고 표현하며, 인간 개발자가 직접 모든 문제를 해결하기에는 너무 복잡하다고 지적했습니다. 따라서 초기 단계에서는 LLM의 도움을 받아 코드의 건전성을 확보하고, 장기적으로는 LLM 없이도 유지보수 가능한 코드베이스를 만드는 것을 목표로 합니다. 이는 AI 시대의 소프트웨어 개발 방식에 대한 새로운 접근을 보여주며, 기존 프로젝트의 기술 부채를 해결하는 데 LLM이 어떤 역할을 할 수 있는지 시사합니다.
