【发布时间】:2017-02-01 20:38:52
【问题描述】:
假设我有以下数据类型
datatype mytype = Foo | Bar | Baz
想写一个类似下面的函数
fun myfun ((Foo|Bar), (Foo|Bar)) = something
| myfun (Baz, _) = somethingelse
| ...
有没有办法为模式Foo|Bar创建一个别名,这样我就可以写一次,避免重复自己?
【问题讨论】:
-
你可以设计一个非常轻量级的预处理器,它允许你使用简单的缩写,在编译之前用它们的值替换。