On Sun, Oct 20, 2019 at 11:33 AM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:
Am So., 20. Okt. 2019 um 23:19 Uhr schrieb Shiro Kawai <xxxxxx@gmail.com>:

(Thinking of parameter objects... what can keyword arguments do what
parameter objects and parameterize cannot already do?)

You can emulate keyword arguments with parameterize but it'll be super awkward.

Suppose f and h takes both test: argument, with the same meaning.

f also takes a procedure and call it without arguments.

If we say (f h test: equal?), we know f is called with test: eqv?, and h is called without arguments so
it uses whatever the default value of test: argument.

Using parameterize, we need to do

   (parameterize ((test equal?))
       (f (lambda () (parameterize ((test <the default value of test>))
                                (h)))))