pingdotgg/ts-rust

An experimental Rust port of the TypeScript 7 compiler (tsc)

해결하는 문제

표준 TypeScript 컴파일러(tsc)의 고성능 대안을 제공하며, TypeScript 컴파일러, 체커, 언어 서버 프로토콜(LSP)을 Rust로 이식함으로써 타입 체크 시간을 단축하고 WebAssembly(WASM)에서 고성능 실행을 가능하게 합니다.

작동 방식

이 프로젝트는 원래 Go로 작성된 Microsoft의 네이티브 TypeScript 컴파일러의 직접적인 이식입니다. 동일한 알고리즘, 동작 방식, 명령줄 인터페이스를 유지합니다. 이식은 LLM(특히 Claude Opus 5.5)을 사용하여 Go 구현을 Rust로 번역함으로써 이루어졌습니다.

대상 사용자

  • 대규모 프로젝트에서 더 빠른 타입 체크를 원하는 TypeScript 개발자.
  • WASM에서 효율적으로 실행될 수 있는 TypeScript 체커가 필요한 개발자.
  • Effect 프레임워크 사용자(내장된 Effect 언어 서비스 진단 기능을 포함하고 있음).

주요 특징

  • 현저한 성능 향상: 실제 애플리케이션에서의 벤치마크 결과, tsc 6에 비해 평균 11.4배 빠르고, tsc 7(Go 컴파일러)에 비해 1.61배 빠릅니다.
  • 즉시 대체 가능: tsc와 동일한 명령줄 옵션을 사용할 수 있으며, npm을 통해 tsc-rs로 설치 가능합니다.
  • Effect 통합: Effect 언어 서비스용 내장 진단 기능을 포함하여 별도의 컴파일러 단계가 필요하지 않습니다.
  • 높은 호환성: 테스트된 실제 프로젝트에서 100% 호환성을 보이며, 181,000개 이상의 Go 테스트를 통과했습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트