DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(guile.info.gz) Alist Example

Info Catalog (guile.info.gz) Sloppy Alist Functions (guile.info.gz) Association Lists
 
 22.7.2.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"))
 
Info Catalog (guile.info.gz) Sloppy Alist Functions (guile.info.gz) Association Lists
automatically generated byinfo2html