Skip to content

swc 与 esbuild 给予的参考与启示 #7

@Cyberhan123

Description

@Cyberhan123

1.为什么不选择rust?
rust 源码分发难度和编译速度相比go有点差,rust语法概念过于复杂,rust迭代过于频繁很多语法经常变动,不适合我这样没有C基础的
性能这个问题其实是个仁者见仁智者见智的问题。
2.为什么选择go?
因为go有go关键字,go和js python很像,go的性能不是很差,go可以提供二进制分发能力。
3.为什么不选择esbuild和swc另起灶炉?
swc很适合我去偷懒,可惜我们的目标可能有些许偏差,我想要的是具有源码分发和二进制可分发能力的语言,而rust目前看还是有欠缺,swc和esbuild很棒但是有些理念违背了我的想法,我想要完全摆脱node_model与node这个属于2010年这十年间的产物,走向完全可以实现自主分发的程序,就比如deno的思想和go mod的思想就很棒。
还有esbuild自身定位的问题,就是ast不标准化(不要跟我聊性能问题),这会导致它只能作为一个打包器,而不能作为一个ast服务向其他服务提供能力。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions