Abstract


  • Compiler or Interpreter automatically figure out the Datatype based on the context
  • For example, in [Java, we can do List<Integer> intList = new ArrayList<>() instead of List<Integer> intList = new ArrayList<Integer>(), the Compiler is smart enough to figure out the Datatype for ArrayList based on the context provided by List<Integer>

Reduce boilerplate code - more concise & readable

Too much may reduce the readability