GNU Info

Info Node: (guile.info)Alist Example

(guile.info)Alist Example


Prev: Sloppy Alist Functions Up: Association Lists
Enter node , (file) or (file)node

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" "Bismarck"))
     capitals
     => (("South Dakota" . "Bismarck")
         ("New York" . "Albany")
         ("Oregon" . "Salem")
         ("Florida" . "Miami"))
     
     ;; And we got Florida wrong.
     (set! capitals
           (assoc-set! capitals "Florida" "Tallahassee"))
     capitals
     => (("South Dakota" . "Bismarck")
         ("New York" . "Albany")
         ("Oregon" . "Salem")
         ("Florida" . "Tallahassee"))
     
     ;; After Oregon secedes, we can remove it.
     (set! capitals
           (assoc-remove! capitals "Oregon"))
     capitals
     => (("South Dakota" . "Bismarck")
         ("New York" . "Albany")
         ("Florida" . "Tallahassee"))


automatically generated by info2www version 1.2.2.9