Richard Searle's Blog

Thoughts about software

Resolved the ()=>Unit surprise

Posted by eggsearle on March 28, 2012

f{() => println("2")} calls f with a value that is a function.

Scala has a special case where expressions with a return type of Unit discard any value that might otherwise be returned.
In this case, the expression is() => println("2"). The resultant Unit matches the signature of f, which explains why the compiler does not complain.

Leave a comment