I don't know, if this is useful:
trait Printer {
def apply(message: String = "Warning: The message argument is empty!"): Unit
}
val console: Printer = (message: String) => println(message)
console("Hello World!") // Hello World!
console() // Warning: The message argument is empty