title: Why is the `unary_` prefix needed in scala?
body: <p>Beginner Scala question, but I couldn't find the answer on here.</p>
  
  <p>Similar to overloading in C++, I would expect the compiler can tell the difference between a method called <code>-</code> which takes one parameter (with the same type as the class) and the unary version of <code>-</code> which takes no parameters, so why is <code>unary_</code> needed?</p>