title: Scala | what is the difference between '<-', '->' and '=>' operators and how do they work implicitly?
body: <p>While studying basic of Scala I came across "&lt;-" operator which they say is a generator from any range/list or collection.</p>
  
  <ol>
  <li>On what basis it generates the values and what may be the way to do that implicitly?</li>
  <li>Is compulsory to take a main() in Object.scala? Can't I define a main() in a Class.scala?</li>
  <li>Is compulsory to make an Object.scala to take the output from the methods of a class?</li>
  </ol>