Why can't the first parameter list of a class be implicit?
问题 scala> class A(implicit a: Int); defined class A scala> class B()(implicit a: Int); defined class B scala> new A()(1) res1: A = A@159d450 scala> new B()(1) res2: B = B@171f735 scala> new A(1) <console>:7: error: too many arguments for constructor A: ()(implicit a: Int)A new A(1) Why does Scalac insert an empty parameter list before the implicit parameter list provided in the class declaration? This seems to be a feature, not a bug, judging by the commentary in the scalac sources: // convert