핵심 요약
- 클라우드플레어와 VoidZero가 협력해 TypeScript 컴파일러를 Rust로 포팅한 신규 프로젝트 'tsrs'를 발표했습니다.
- 벤치마크 결과 기존 대비 최대 8배 빠른 속도와 70% 감소한 메모리 사용량을 보이며 높은 효율을 입증했습니다.
- WebAssembly 환경에 최적화된 Rust의 특성을 살려 브라우저나 엣지 워커 환경에서도 완전한 개발 툴 구동을 목표로 하고 있습니다.
요약 클라우드플레어(Cloudflare)와 보이드제로(VoidZero)가 Owner.com의 맥스 슈벵크와 손잡고 타입스크립트(TypeScript) 컴파일러를 Rust 언어로 포팅하는 프로젝트 'tsrs'를 공식 발표했습니다. 이번 프로젝트는 TypeScript 공식 팀과의 긴밀한 협력 아래 진행되며, 자바스크립트 툴체인인 Oxc의 일부로 인큐베이팅되고 있습니다.
개발진은 이번 작업이 공식 TypeScript를 포크(분기)하려는 것이 아니라고 분명히 선을 그었습니다. 언어의 설계 및 방향성은 온전히 TypeScript 팀이 주도해야 하며, Rust 포팅 버전은 오리지널 구현체의 호환성을 철저하게 따르는 것을 원칙으로 삼고 있습니다.
초기 벤치마크 결과에 따르면, tsrs는 동일한 타입 체크 워커 환경에서 TypeScript 7.0 대비 최대 8배 빠르고 메모리 사용량은 약 70% 줄어든 것으로 나타났습니다. 머신 사양에 맞춰 메모리를 더 활용하는 적응형 설정을 적용할 경우 속도는 더욱 빨라집니다.
과거에도 다양한 포팅 시도가 있었지만 복잡성 탓에 대부분 실패했고 공식 팀의 Go 언어 포팅 정도만 성공했으나, 최근 고성능 AI 모델의 등장으로 단 며칠 만에 대규모 언어 포팅이 가능해지면서 이번 프로젝트가 본격화되었습니다. 특히 Go 언어 대비 Rust를 선택한 결정적인 이유는 WebAssembly(Wasm) 지원 때문입니다. Go는 Wasm 컴파일 시 가비지 컬렉터(GC)까지 함께 번들링해야 하지만, Rust는 가벼운 메모리 모델 덕분에 Wasm 환경에서 압도적인 효율을 냅니다. 이를 통해 클라우드플레어 워커 환경은 물론 브라우저 클라이언트, 임베디드 기기 등에서도 완전한 개발 환경을 가볍게 구동할 수 있게 됩니다.
유지보수를 위해 개발팀은 테오 브라운(Theo Browne)의 tsc-rs와 tsrs를 통합하는 한편, 매일 AI 에이전트가 업스트림의 변경 사항과 테스트 스위트를 감지하고 호환성을 맞추는 자동화 파이프라인을 적용할 예정입니다. 현재 tsrs는 npm 패키지를 통해 실험적 릴리스로 직접 설치해 사용해볼 수 있습니다.
Sponsored · 광고