TypeRunner —— 高性能 TypeScript 编译器
TypeRunner 是一个高性能 TypeScript 编译器。
Goals
- 解析器
- 类型检查(作为 CLI 和库)
- 语言服务器
- 交互式类型调试
- 用其他语言输入信息
- (可选)转译为 JavaScript
- (可选)JavaScript 中的 RTTI
- (可选)类型分析器
此外,使TypeScript类型检查尽可能快,并为其他语言提供一个本地库,这样他们就可以使用TypeScript类型信息,而不需要JavaScript引擎,使各种用例,如JSON-Schema替换,ORM DSL,编码信息(如Protocol Buffers模式)等等。
Non-goals
- 替代官方 TypeScript 编译器
- 运行
作为整个官方 TypeScript 编译器 (tsc) 的直接替代品,需要复制 tsc 的设计限制、错误和遗留决策。由于 TypeScript 已有 10 年的历史,因此有许多功能在今天是不必要的,但为了兼容性而保留。该项目专注于 TypeScript 的一个更严格的子集,这意味着 TypeRunner 将不支持某些功能,例如 JSDoc 和几个编译器选项。
初始版本中的源代码实际上只是一个概念证明。它由大约 30k LoC 组成,并显示出非常有希望的结果。方法是使用 TypeScript 到字节码的编译器,然后在自定义虚拟机中运行字节码。数据表明,这种方法可以使速度提高几十倍到几千倍。
TypeRunner 目前只支持非常基本的类型表达式:原语、变量声明、(通用)函数声明、一些类型函数,如类型别名、(分布)条件类型、模板文字、数组/元组、索引访问、联合、以及一些其他东西。
TypeRunner 现下的开发几乎停滞不前,更多的是一个实验/概念证明。一旦项目通过社区获得资金,开发将继续。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | 特征平台在数禾的建设与应用
本篇文章为数禾科技数据开发专家杨涵冰的演讲内容整理。主要内容包括: 特征平台概览 特征存储服务 流批一体方案 模型策略调用方案 点击查看更多技术内容 一、特征平台概览 首先是特征平台的概览,整个特征平台分成四层,分别是数据服务、存储服务、计算引擎、原始存储。数据服务层提供向外的服务,主要包括四种: 一是传统的 API 点查; 二是圈选查询; 三是事件消息; 四是同步调用计算。 其中同步调用计算服务是即时计算的,相当于现场进行策略运算,而 API 点查服务是预先计算并存储的。为了提供数据服务,提供特征行存和特征列存两种服务方式,分别支撑 API 点查和圈选查询。计算引擎有两个,分别是离线运算引擎和流批一体运算引擎。特征平台的最底层是原始存储,原始存储是为了支持离线运算功能,而事件存储是为了支持流批一体运算。 下面以 MySQL 为例介绍简化的特征平台数据流转过程。 首先是离线部分,通过 Sqoop 或者其他的抽取工具将 MySQL 数库的数据抽取到 EMR,然后经过 Hive 运算,把最终的运算结果存到 HBase 和 ClickHouse 中,分别对应特征行存和特征列存,以提供 API...
- 下一篇
被诉“牟取暴利”,苹果和解后向 App Store 开发者支付索赔金
此前,美国开发商就“牟取暴利”的 App Store 佣金向苹果公司提起诉讼,该诉讼声称苹果垄断了 iOS 应用程序的分发和应用程序内购买。作为和解协议的一部分,苹果方面同意设立 1 亿美元的小型开发者援助基金。 该基金面向在 2015 年 6 月 4 日至 2021 年 4 月 26 日期间通过 App Store 销售付费应用或提供应用内购买的美国开发者,且开发人员必须在 2022 年 5 月 20 日之前提交索赔。开发者每个日历年通过 App Store 赚取的收入必须低于 100 万美元,符合条件的开发商将有权获得最低 250 至 30,000 美元的现金付款。 根据法庭文件,大约有 67,000 名开发商有资格提出索赔。但目前尚不清楚提交了多少索赔要求。据一些符合条件的开发者所述,其付款已经开始到账。 值得一提的是,苹果公司否认了所有的指控,和解并不意味着承认该公司有不当行为。接受和解的开发者不能再就集体诉讼中提出的相同诉求单独起诉苹果公司,包括任何声称苹果因 App Store 的费用结构而向他们多收费用的索赔。 作为和解的一部分,苹果公司还承诺将继续为小型开发者降低 15...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- 2048小游戏-低调大师作品
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音