> The answer here is SRFI 159/166. :)
Since this SRFI came after 159 and 166 had been out for a while, we
should assume Joo has a good reason to eschew the DSL approach for some
applications (a comparison in SRFI 183's rationale would be useful).
> So this is also a wonderful case study for general keyword arguments vs
> some tailored DSL.
That's true.
I tend to favor DSLs if there is plenty of time to explore the problem
from all angles, or if the problem is complex enough that the solution
requires multiple procedures anyway. On the other hand, keyword
arguments may be less likely to make a mess if there is not enough time
for thorough design and experimentation.
In fox's case, it's only a single procedure, so keywords would probably
be a win unless more comprehensive formatting is desired (for which SRFI
159/166 are good solutions).