Mor*_*ane 5 javascript macros metaprogramming julia typescript
我习惯了 Julia 宏(元编程),这是生成灵活代码的一种非常方便的方法。
https://docs.julialang.org/en/v1/manual/metaprogramming/
是否有 JavaScript 或 TypeScript 的等效项。比如一个包或者一种工作方式?
不,没有同等的东西。ECMAScript 和 TypeScript 都没有宏。
\n有一个关于Decorators的提案,它允许您做宏可以做的事情的一小部分,但该提案仍处于规范过程的第 2 阶段。
\n目前还没有将宏添加到 ECMAScript 的官方提案(我浏览了所有第 3 阶段、第 2 阶段、第 1 阶段和第 0 阶段提案的列表),也从未有过(我还检查了非活动和撤回的提案)。然而,关于它的讨论反复出现,尤其是在某一时刻,一些方案设计者也是 ECMAScript 委员会的成员。
\n在 Julia、Scheme、Rust、Boo、Nemerle 等语言中使用宏可以实现什么目标。通常通过 ECMAScript 社区中的源到源编译器(有时称为转译器)来解决。其中最受欢迎的是Babel。巴别塔主要是用于“编译”较新的语言功能,即允许程序员使用最新的语言功能甚至尚未发布的提案,但仍然在只有旧版本的语言可用的环境中运行代码。
\n然而,有一些第三方宏库可以通过 \xe2\x80\xa6 将宏添加到 ECMAScript,您猜对了 \xe2\x80\xa6 源到源转译。其中之一是Sweet.js。
\n| 归档时间: |
|
| 查看次数: |
518 次 |
| 最近记录: |