在scala和其他一些语言(Haskell,SML)中,我们可以使用模式匹配,例如:
val user: Option[User] = findUser(123)
user match {
case Some(u) => ...
case _ => ...
}
关于模式匹配与类型系统的关系,我有几个问题:
“静态类型系统”是否必须支持模式匹配?
是否有“动态类型系统”语言支持模式匹配?
更新:
感谢@Eran的回答。
我知道有很多语言不支持模式匹配,比如c/c++/java/python/ruby/javascript/lisp (我可以在这个列表