也许也值得一提
驼峰命名法对于Clojure绑定来说并不地道,所以我们使用(ns struct-maps),(defn pets ...),(def my-pet ...)等方式。我们在类似“类型”命名的或其他在底层生成Java类的情况下使用驼峰命名法。
def(以及其他def*类的东西)创建顶层定义,所以我们不会在函数内部使用它们。如果你正在跟随这样的教程,那么这是一个糟糕的教程,你应该停止跟随它,并寻找更好的东西。
正如其他人指出的,结构体很长时间以前就已经被弃用了,尽管存在作为现代替代品的记录(records),但我们一般使用普通的哈希映射(hash maps)-- 这是从静态类型面向对象语言转换过来必须习惯的东西:Clojure大部分时间都在处理普通的数据。