Hasty Briefsbeta

双语

Pyrefly vs. Ty: Comparing Python's Two New Rust-Based Type Checkers

a year ago
  • #Python
  • #Rust
  • #Type Checking
  • 2025年PyCon大会上发布了两款基于Rust的Python类型检查器:Meta公司的pyrefly和Astral公司的ty。
  • 两款工具均为开源增量式检查器,均采用Ruff进行AST解析,但目标和方法存在差异。
  • Pyrefly主打激进类型推断,致力于在无类型标注代码中发现尽可能多的错误。
  • Ty则强调渐进式保障,确保类型注解不会在正常运行的代码中引入新错误。
  • 基准测试显示ty速度比pyrefly快2-3倍,两者均显著优于mypy和pyright。
  • Pyrefly采用模块级增量更新机制,ty则通过Salsa实现细粒度增量处理。
  • Ty创新性地引入了交集类型与否定类型,这在Python类型检查器中独树一帜。
  • 两款工具均处于早期alpha阶段,pyrefly擅长隐式类型推断,ty则以清晰的错误信息见长。
  • 未来功能可能趋于融合,另有传言称谷歌正在开发基于Go语言的类型检查器。