评论者:dnolen
(match [x] [^Foo {.-bar 5 .-baz 7}] :a0 [^Foo {.-bar _ .-woz 8}] :a1 :else :a2)
鉴于最近关于 ClojureScript 属性访问的讨论,这似乎是高性能属性访问的可行语法。
也许
(match [^Foo x] [{.-bar 5 .-baz 7}] :a0 [{.-bar _ .-woz 8}] :a1 :else :a2)
但这可能不太可能,因为我们可能应该当有人尝试在此行中声明不同类型时抛出异常。