When I try to omit dots from method invocations, like in this example program:
object Test extends Application {
val baz = new Baz
var foo = baz bar
println(foo)
}
class Baz {
def bar = "bar"
}
I get strange errors. The first one is error: recursive method foo needs type: println foo
and the other one is error: type mismatch; found: Unit, required: Int, println(foo)
. The first error is in some strange way fixed if i specify that the type of foo
should be String. The second one won't go away before I put a dot between baz
and bar
. What is the cause of this? Why does Scala think that baz bar
is a recursive method?