Why does using keywords or symbols as functions to lookup values from maps work?

后端 未结 3 1025
你的背包
你的背包 2020-12-06 04:10

Quoting from Joy of Clojure, section 4.3.1--

Because keywords are self-evaluating and provide fast equality checks, they\'re almost always us

3条回答
  •  情歌与酒
    2020-12-06 04:53

    Keywords implement IFn,

    https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/Keyword.java

    and its invoke method handles calling get.

提交回复
热议问题