Macros Erlang中的一流模式?
在Erlang中是否有对的支持Macros Erlang中的一流模式?,macros,erlang,language-features,first-class,Macros,Erlang,Language Features,First Class,在Erlang中是否有对的支持 f(SomeMagicPattern) -> receive SomeMagicPattern -> ok end. 如果答案是否定的(支持),您知道实现这一目标的其他方法吗?例如,使用宏?否,Erlang没有现成的一流模式。 有两种方法可以实现这一点: 宏。广泛应用于测试工具,例如EUnit和PROPERT。例如,EUnit有一个?assertMatch宏,它实际上是一个一流模式的示例: ?assertMatch({ok,},结果)
f(SomeMagicPattern) ->
receive
SomeMagicPattern -> ok
end.
如果答案是否定的(支持),您知道实现这一目标的其他方法吗?例如,使用宏?否,Erlang没有现成的一流模式。 有两种方法可以实现这一点:
正如demeshchuk指出的那样,情况并非如此 然而,有人提议增加与该语言类似的内容:
这是不是一个好主意是一个完全不同的问题 Erlang没有一流的模式,这就是为什么我们在
ETS
和跟踪中有匹配模式的原因。不优雅但必要。