Most special classes in the Dart SDK are probably abstract (e.g. int, String). In those cases there should not be any explicit constructor invocations. At the very least, this is required for Java interoperability reasons (instantiating a Java class from Dart once we figured out interop details).