Guile Reference Manual: Alist Example

Warning: This is the manual of the legacy Guile 2.0 series. You may want to read the manual of the current stable series instead.

Previous: , Up: Association Lists [Contents][Index]


6.7.12.6 Alist Example

Here is a longer example of how alists may be used in practice.

(define capitals '(("New York" . "Albany")
 ("Oregon" . "Salem")
 ("Florida" . "Miami")))
;; What's the capital of Oregon?
(assoc "Oregon" capitals) ⇒ ("Oregon" . "Salem")
(assoc-ref capitals "Oregon") ⇒ "Salem"
;; We left out South Dakota.
(set! capitals
 (assoc-set! capitals "South Dakota" "Pierre"))
capitals
⇒ (("South Dakota" . "Pierre")
 ("New York" . "Albany")
 ("Oregon" . "Salem")
 ("Florida" . "Miami"))
;; And we got Florida wrong.
(set! capitals
 (assoc-set! capitals "Florida" "Tallahassee"))
capitals
⇒ (("South Dakota" . "Pierre")
 ("New York" . "Albany")
 ("Oregon" . "Salem")
 ("Florida" . "Tallahassee"))
;; After Oregon secedes, we can remove it.
(set! capitals
 (assoc-remove! capitals "Oregon"))
capitals
⇒ (("South Dakota" . "Pierre")
 ("New York" . "Albany")
 ("Florida" . "Tallahassee"))

AltStyle によって変換されたページ (->オリジナル) /