Microsoft: Native porting to Go should make TypeScript ten times faster

Microsoft: Native porting to Go should make TypeScript ten times faster

  • 7 hours ago
  • heise.de
  • Keywords: No companies, Financial Data

Microsoft aims to make TypeScript up to ten times faster by porting its tools and compilers to Go. This will reduce build times, improve editor performance, and handle large codebases and AI tools more efficiently.

Microsoft News

Context

Analysis of Microsoft's TypeScript Performance Improvements via Go Porting

Key Facts and Technical Details

  • Objective: Microsoft aims to significantly accelerate TypeScript by porting its compiler and tools to Go, targeting a 10x speed improvement.
  • Current Implementation: TypeScript's performance lags in large projects with long loading and testing times.
  • Go Implementation Benefits:
    • Faster editor start time.
    • Reduced build times (up to 10x faster).
    • Lower memory consumption.

Performance Metrics

  • Comparison of Build Times: | Codebase | LOC (Lines of Code) | Current Time (s) | Native Go Time (s) | Speedup Factor | |--------------------|---------------------|-------------------|--------------------|----------------| | VS Code | 1,505,000 | 77.8 | 7.5 | 10.4x | | Playwright | 356,000 | 11.1 | 1.1 | 10.1x | | TypeORM | 270,000 | 17.5 | 1.3 | 13.5x | | date-fns | 104,000 | 6.5 | 0.7 | 9.5x | | tRPC (Server + Client) | 18,000 | 5.5 | 0.6 | 9.1x | | rxjs (Observable) | 2,100 | 1.1 | 0.1 | 11.0x |

Timeline and Versioning

  • Preview Release: Mid-2025 for native tsc command-line typechecking.
  • Full Implementation: End of 2024 for project builds and language service.
  • Versioning Strategy:
    • TypeScript 6 (JS): Based on JavaScript codebase.
    • TypeScript 7 (TS): Based on Go implementation, planned for 2025.

Market Impact and Strategic Considerations

  • Developer Appeal: Faster build times and smoother development experience will enhance TypeScript's competitiveness.
  • AI Integration: Improved performance supports larger AI-based projects requiring extensive semantic analysis.
  • Long-Term Effects:
    • Better tooling for large-scale projects.
    • Potential to attract more enterprise and open-source adopters.

Competitive Dynamics

  • Why Go?
    • Go's native performance and concurrency capabilities make it ideal for compiler development.
    • Microsoft aims to maintain leadership in the JavaScript/TypeScript ecosystem while addressing scalability challenges.

Conclusion

Microsoft's move to port TypeScript to Go represents a strategic shift to address long-standing performance issues. The potential for 10x faster compilation times positions TypeScript as a more robust choice for large-scale projects, with significant implications for the broader software development landscape.