struct.js中javascript中宏的解释

时间:2013-12-16 08:26:05

标签: javascript macros

我知道javascript,但我不理解struct.js git repo中的代码。它使用ES6吗?任何人都可以解释该代码中的宏,我在哪里可以找到有关它的更多信息?

代码如下所示:

let function = macro {
    case { _ $id $args { $expr ... } } => {
        var SP = makeIdent('SP', #{$name});
        return withSyntax($SP = [SP]) {
            return #{
                function $id $args {
                    var $prevSP = $SP;
                    $expr ...
                    $SP = $prevSP;
                }
            }
        }
    }
}

该代码不适用于Chromium(Xubuntu上的第30版)我也尝试在节点v0.10.22上运行它。我在哪里可以测试这段代码?

1 个答案:

答案 0 :(得分:3)

该代码使用预处理器将sweet.js转换为Javascript。

这不是简单的Javascript。