tsrs: TypeScript 컴파일러의 Rust 포트

4 hours ago 4

Cloudflare와 VoidZero가 Owner.com의 Max Schwenk와 함께 TypeScript 컴파일러의 Rust 포트인 tsrs를 개발함. TypeScript 팀과 긴밀히 협력하며 Oxc 도구 체계 안에서 프로젝트를 육성함 초기 벤치마크에서 동일한 타입 검사 워커 수를 사용할 때 TypeScript 7.0보다 최대 8배 빠르고 메모리를 약 70% 적게 사용함 언어를 별도로 발전시키는 포크가 아니라 원본 구현을 충실히 따르는 포트를 목표로 함. 언어 설계와 방향 결정은 TypeScript 팀에 맡기고, 업스트림과 동작이 갈라지지 않도록 유지할 계획임 Rust를 선택한 이유는 속도뿐 아니라 WebAssembly에서의 메모리 효율성임. 개발 도구 체계 전체를 샌드박스에서 실행하고, 브라우저나 임베디드 기기까지 실행 환경을 넓히려 함 현재 npm에서 실험적 릴리스를 사용할 수 있으나 진단 메시지 출력 순서 등 원본과 차이가 남아 있음. tsc-rs와의 통합 및 에이전트를 활용한 호환성 유지도 추진함 개발 목표와 TypeScript 호환성 tsrs는 Cloudflare, VoidZero, Owner.com의 Max Schwenk가 함께 개발하는 TypeScript 컴파일러의 Rust 포트이며, Oxc JavaScript 컴파일러 도구 체계의 일부로 육성 중임 목표는 타입 검사 대기 시간과 메모리 사용량을 줄이고, 브라우저를 포함한 더 많은 환경에서 완전한 개발 환경을 실행할 수 있게 하는 것임 TypeScript 언어 자체를 포크하지 않으며, 언어 설계와 방향에 대한 통제권은 TypeScript 팀에 그대로 남겨둠 TypeScript 팀은 빠르게 구현하는 기능도 있지만, 일부 기능은 수년간 선택지를 검토하고 프로토타입을 만든 뒤 구현 방식을 결정함 Rust 포트가 이런 결정을 충실히 따르지 않으면 결국 호환성을 잃게 되므로, 원본 구현을 엄격하게 기준으로 삼아야 함 성능과 메모리 사용량 초기 벤치마크에서 동일한 타입 검사 워커 수를 사용한 tsrs는 TypeScript 7.0 대비 최대 8배 빠르고 메모리를 약 70% 적게 사용함 TypeScript 7.1 베타도 7.0보다 최대 2.5배 빨라졌으며, 일부 최적화는 tsrs에서 업스트림으로 반영된 것임 다른 TypeScript 포트의 최근 성능 수치에는 더 큰 머신이나 TypeScript 기본값과 다른 옵션을 사용한 경우가 많았음. 이번 비교는 TypeSc...

Read Entire Article




피플앤툴즈 네트워크
🛍 샵