Skip to content

Latest commit

 

History

History
69 lines (56 loc) · 2.52 KB

README.md

File metadata and controls

69 lines (56 loc) · 2.52 KB

This system gathers a list of iso4217 currency codes from the wikipedia website, and returns them as a list of currency objects which contain slots for the the iso currency code, the description, as well as pointers to the iso codes of the currency that replaces the object in the event that it has been superseded. Forex, the irish punt is replaced by the euro.

ex:

    ISO4217-CODES> (gather-all-monies (get-currency-codes))
    =>
    (list of currency objects in CL printable form that the github
    markdown dynamo refuses to display properly because the representation
    contains angle brackets)

    ISO4217-CODES> (describe (first *)) 
    =>
    \<ISO-CURRENCY-CODE {1005CA6563}>
      [standard-object]
    
    Slots with :INSTANCE allocation:
      ISO-CODE                       = "ZWL"
      HISTORIC                       = T
      DESCRIPTION                    = "Zimbabwean dollar"
      FROM                           = "2009-02-03"
      UNTIL                          = "2009-04-12"
      USED-BY                        = NIL
      REPLACED-BY                    = "USD/Zimbabwean bonds"
    ; No value

    ISO4217-CODES> (write-iso-file #P "/tmp/currency-codes")
    =>
    HISTORICAL! "ZWL" "932" "2" "Zimbabwean dollar" "2009-02-03" "2009-04-12" "USD/Zimbabwean bonds"
    HISTORICAL! "ZWR" "935" "2" "Zimbabwean dollar" "2008-08-01" "2009-02-02" "ZWL (USD/Zimbabwean     bonds)"
    HISTORICAL! "ZWN" "942" "2" "Zimbabwean dollar" "2006-08-01" "2008-07-31" "ZWR (USD/Zimbabwean     bonds)"
    HISTORICAL! "ZWD" "716" "2" "Zimbabwean dollar" "1980-04-18" "2006-07-31" "ZWN (USD/Zimbabwean     bonds)"
    HISTORICAL! "ZWC" "..." "2" "Rhodesian dollar" "1970-02-17" "1980" "ZWD (USD/Zimbabwean bonds)"
    HISTORICAL! "ZRN" "180" "2" "Zairean new zaire" "1993" "1997" "CDF"
    HISTORICAL! "ZRZ" "180" "3" "Zairean zaire" "1967" "1993" "ZRN (CDF)"
    
    ...
    
    STANDARD! "AOA" "973" "2" "Angolan kwanza" "Angola"
    STANDARD! "ANG" "532" "2" "Netherlands Antillean guilder" "Curaçao (CW), Sint Maarten (SX)"
    STANDARD! "AMD" "051" "2" "Armenian dram" "Armenia"
    STANDARD! "ALL" "008" "2" "Albanian lek" "Albania"
    STANDARD! "AFN" "971" "2" "Afghan afghani" "Afghanistan"
    STANDARD! "AED" "784" "2" "United Arab Emirates dirham" "United Arab Emirates"
    NIL
    ISO4217-CODES> 

and the contents of /tmp/currency-codes:

zrz:Zaïrean zaïre
zrn:Zaïrean new zaïre
zmk:Zambian kwacha
zal:South African financial rand (funds code) (discontinued)
yum:Yugoslav dinar
yug:Yugoslav dinar
...

etc.