Or you can just use a unified Options
structure, like
@kwdef struct Options{T}
soundspeed::T = 344.0
lightspeed::T = 3e5
end
function f(x; options=Options())
...
end
and then the user can do:
f(x; options=Options(soundspeed=500.0))
to change some value.