可能还值得一提
驼峰命名法并不适合 Clojure 绑定,所以我们会有 (ns struct-maps),(defn pets ..),(def my-pet ..),以此类推。我们在类似 "类型" 名称或在底层生成 Java 类的场合使用驼峰命名法。
定义(以及其他的定义*)创建顶层定义,这样我们就不会在函数内部使用它们。如果你正在遵循这样一个教程,那么这是一个糟糕的教程,你应该停止跟随它,寻找更好的东西。
如其他人所指出的,结构体已经被弃用很长时间了,即使录音带作为一种现代替代品存在,我们通常还是使用普通的旧散列表——这是从静态类型OOP语言转过来需要习惯的东西:Clojure大部分时间都是关于普通数据的。