- Notifications
You must be signed in to change notification settings - Fork 1.1k
Closed
Description
Opening this issue, as suggested by Martin, to provide a place to discuss the individual warts brought up in the blog post Warts of the Scala Programming Language and the possibility of mitigating/fixing them in Dotty (and perhaps later in Scala 2.x). These are based on Scala 2.x behavior, which I understand Dotty follows closely, apologies in advance if it has already been fixed
This doesn't work:
@ class Foo(i: Int) defined class Foo @ new Foo(1) res50: Foo = $sess.cmd49$Foo@7230510 @ class Bar(implicit i: Int) defined class Bar @ new Bar(1) cmd52.sc:1: no arguments allowed for nullary constructor Bar: ()(implicit i: Int)$sess.cmd51.Bar val res52 = new Bar(1) ^ Compilation FailedBut this does:
@ new Bar()(1) res52: Bar = $sess.cmd51$Bar@467de021This one straddles the line between "Wart" and "Bug", but definitely should
be fixed so that a class defined with one argument list doesn't magically
sprout two.
mb720, senia-psm, ShaneDelmore, tekacs, mariop-da and 10 more