Thanks. That’s a good point about using extension methods. That doesn’t quite fit my original (unwritten) motivation, which is to write nice DSLs. Having to change invocation syntax in DSLs may or may not defeat the point of the DSL.
To double-check: I can theoretically already invoke def foo[T, U](...)
with foo[T = Int]
where U
will be inferred by the compiler, but not simply foo[Int]
? That seems like a potentially easy change. Thanks for the pointer.