TypeRunner 高性能 TypeScript 编译器开源项目

我要开发同款
白开水不加糖2022年10月27日
44阅读
开发技术C/C++
所属分类开发工具、编译器
授权协议未知

作品详情

TypeRunner是一个高性能TypeScript编译器。

Goals

解析器类型检查(作为CLI和库)语言服务器交互式类型调试用其他语言输入信息(可选)转译为JavaScript(可选)JavaScript中的RTTI(可选)类型分析器

此外,使TypeScript类型检查尽可能快,并为其他语言提供一个本地库,这样他们就可以使用TypeScript类型信息,而不需要JavaScript引擎,使各种用例,如JSON-Schema替换,ORMDSL,编码信息(如ProtocolBuffers模式)等等。

Non-goals

替代官方TypeScript编译器运行作为整个官方TypeScript编译器(tsc)的直接替代品,需要复制tsc的设计限制、错误和遗留决策。由于TypeScript已有10年的历史,因此有许多功能在今天是不必要的,但为了兼容性而保留。该项目专注于TypeScript的一个更严格的子集,这意味着TypeRunner将不支持某些功能,例如JSDoc和几个编译器选项。

初始版本中的源代码实际上只是一个概念证明。它由大约30kLoC组成,并显示出非常有希望的结果。方法是使用TypeScript到字节码的编译器,然后在自定义虚拟机中运行字节码。数据表明,这种方法可以使速度提高几十倍到几千倍。

TypeRunner 目前只支持非常基本的类型表达式:原语、变量声明、(通用)函数声明、一些类型函数,如类型别名、(分布)条件类型、模板文字、数组/元组、索引访问、联合、以及一些其他东西。

TypeRunner现下的开发几乎停滞不前,更多的是一个实验/概念证明。一旦项目通过社区获得资金,开发将继续。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论