Avoid default parameters Default parameters are convenient but have a number of issues: Unclear code Hard to use currying and partial application Subtle bugs that would be otherwise catched by the compiler See [https://blog.ssanj.net/posts/2019-05-01-why-are-default-parameter-values-considered-bad-in-scala.html]