เอกสารอ้างอิงการแสดง: ตัวเลือกสูงสุดประวัติศาสตร์และกล่าวว่า "refs สะสมประวัติศาสตร์แบบไดนามิกตามความจำเป็นเพื่อจัดการกับความต้องการอ่าน." ฉันเห็นว่ามีประวัติอยู่ที่ REPL แต่ฉันไม่เห็นวิธีการค้นหาค่าก่อนหน้าของการอ้างอิง:
user=> (def the-world (ref "hello" :min-history 10))
#'user/the-world
user=> (do
(dosync (ref-set the-world "better"))
@the-world)
"better"
user=> (let [exclamator (fn [x] (str x "!"))]
(dosync
(alter the-world exclamator)
(alter the-world exclamator)
(alter the-world exclamator))
@the-world)
"better!!!"
user=> (ref-history-count the-world)
2
สมมุติว่าโลกมีค่า "สวัสดี", "ดีกว่า" และ "ดีกว่า !!!" ฉันจะเข้าถึงประวัตินั้นได้อย่างไร
หากไม่สามารถเข้าถึงประวัตินั้นมีประเภทข้อมูลที่เก็บประวัติค่าที่สามารถสอบถามได้ในภายหลังหรือไม่? หรือว่าทำไมฐานข้อมูล datomic ถูกสร้างขึ้น?