Clojure编程基础:记录、宏、函数与命名空间详解
1. 记录(Records)
在Clojure中,记录是一种特殊的数据结构,用于创建自定义的数据类型。创建记录时,参数名会转换为键,传入的值则作为对应键的值。以下是创建和使用记录的具体步骤:
1.1 创建记录类型
使用 defrecord
宏来定义一个记录类型,例如创建一个 Book
记录:
(defrecord Book [title author])
1.2 实例化记录
可以通过以下几种方式实例化记录:
- 使用 ->
前缀:
(->Book "title" "author")
- 使用原始语法:
(Book. "Anathem" "Neal Stephenson")
- 使用字面量语法:
#user.Book{:title "Infinite Jest", :author "David Foster Wallace"}