Process key-value lists by calling a user-defined macro for each key-value pair. The author is Jonathan Sauer. See also keyval xkeyval.