You've already forked HeurAMS-Core
1.1 KiB
1.1 KiB
HeurAMS-Core
使用受限制的 TypeScript 实现的高性能 HeurAMS 通用内核模块, 用于取代旧版 Python 内核并直接用于多前端平台
项目写的是哪种 TypeScript?
具体地说, 是 ArkTS 风格约束的 TypeScript 严格子集, 具体特征如下:
- 兼容, 但不是 标准 TypeScript: 禁用 any、eval、Proxy、动态属性等
- 兼容, 但不是 HarmonyOS ArkTS: 不依赖 @Component 等 UI 扩展, 不依赖 ohos 平台 API
- 兼容, 但不是 Node.JS: 不依赖其提供的专有 API
- 兼容, 但不使用 npm: 不依赖任何外部包管理器
- 不兼容, 且不是 AssemblyScript: 依赖动态数组与闭包, 动态分配
它是 TypeScript 的一个严格、可静态分析的子集, 目标是:
- 高性能: 对象形状固定, 类型稳定, 利于 JIT/AOT 优化
- 类型安全: 禁用所有绕过类型系统的逃逸舱口
- 运行时安全: 禁用所有运行时代码解释注入与执行操作, 如 eval
- 零依赖移植: 通过依赖注入抽象平台 API, 并内置 (vendor) 或实现所有所需第三方库
- 多平台支持: 拥有在 Flutter, ArkTS, 及任何支持 ECMAScript 2020+ 的环境中运行的能力