使用 TypeScript 开发 AGI

目前似乎还没有最完美的语言,我也是试了 java、 python 、golang 之后,最后综合考虑,定位到 TypeScript

优点

TypeScript 的好处是:

  1. 一定程度上是静态语言,语法不复杂且类似于 c 、c++、c# 系列语法,支持 类编程 或 函数式编程,有自动提示和自动完成。
  2. 基于 v8 ,足够快。相关编辑环境启动也很快(这很重要,人往往是懒得等哪怕一两秒)
  3. 和 ui 最接近,做调试界面时改起来快(AGI 后期涉及大量监控界面)
  4. 相关 ui 库比其它平台更新快 且效果好,比如 naive uiopen in new windowAnt Designopen in new windowblueprintjsopen in new window ,它们的控件的丰富度和交互体验都非常好 (这也很重要,自己看着养眼,有持续做下去的动力,如果有投资人,那么养眼就更重要了)
  5. 可以编译成 js 运行在 node.js 等环境中,或游戏引擎中(unreal、unity、cocos、laya、egret等),而这些都是跨平台的,并且现在有这样一个趋势,游戏逐渐 mod 化和动态化,也就是热更新频繁,所以静态语言反而没有动态语言(js、ts)好用,最近腾讯出品的 Puerts ,就是一个支持在 Unreal 和 Unity 中使用 ts 的插件 https://github.com/Tencent/puerts。
  6. 编译足够快,热刷新足够快,一些环境,比如 vite 还支持只编译更新修改的部分。
  7. js 和 ts 的生态足够大,有 3d 库 three.js ,有大量游戏库,基础网络协议库,也有将 js 部分部署到 gpu 的库(gpu.js)。
  8. 基于 chrome 调试,非常方便快捷,还支持性能分析、内存分析等功能。
  9. ts 有自身完善的 parser,将来可以很方便的编译到其它语言。
  10. ts 有一个版本叫 Static TypeScript,可以不依赖于虚拟机,直接运行在硬件上。

缺点

缺点也有:

不是最快的语言,DeepLearning 库和 数学库 也没有 py 那么多。

取舍和平衡

研发阶段,只要编码时的体验足够快(感觉不到快慢差异)即可,性能上极致的快并不是必须的(况且上面也提到 ts 后期也可以编译到硬件上)。

而且我所学的 AGI 理论open in new window ,恰恰是一定程度上反对 DeepLearning 算法的(明确知道它们的致命缺陷),所以不需要 DL 库。同时也反对盲目使用数学和堆砌复杂公式,所以也不需要复杂的数学库,甚至连矩阵、向量都不需要。

AGI 研发阶段,调试方便最重要,且 逻辑神经元底层网络架构 都是自己写的,不需要调用什么数学库, 普通的加减乘除足以应付,复杂的效果不在于数学公式有多复杂,而在于简单的逻辑神经元集群精妙配合所产生的自组织、协同和适应

没有最好,适合最重要

总之,以上只是我个人的体会,不适用于其他人,不好说哪个语言最好,先试试才知道哪一个最合适自己。

Last Updated:
Contributors: poerlang