If I define a method with a single argument with a default value, can I call it without passing any arguments?
scala> def printArgs(str:String = "default"){println(str)}
printArgs: (str: String)Unit
scala> printArgs
<console>:11: error: missing arguments for method printArgs in object $iw;
follow this method with '_' if you want to treat it as a partially applied function
printArgs
^
You can call it without any parameters, but you cannot call it without any parameter blocks–you need at least an empty list of arguments: