Oron Port
Oron Port
> > > The idiom `OpConv[T => Float, FloatVal]` isn't really any more wordy than `OpFloat.Aux[ToFloat[T], FloatVal]`. I can imagine updating the entire library conventions around type-casting to `=>` They...
> > > > They don't do the same thing (conversion vs. just an auxiliary). > > I do not understand this distinction One is `.toInt` while the other is...
The only reason you require `OpCast` derivatives such as `OpAuxInt` is when using upper-bounds. Because the default `.Out` is not upper-bounded and if you wish to feed it to an...
It shouldn't be ToString, but `GetNameOfSym`. I think it's ok to add. But maybe another way is better- the way string interpolation is currently done inside the implicitNotFound message. We...
No. What I mean is that message string inside it will support "${sym}"
The same way `RequireMsg` is determines what symbol to apply the `implicitNotFound` annotation on. Actually, I haven't tried it, but I wouldn't be surprised if it works as-is.
Yes, apparently it works: ```scala trait Foo[T] object Foo { implicit def ev[T](implicit r : RequireMsg[false, "Bad Type: ${T}"]) : Foo[T] = ??? } implicitly[Foo[Int]] //error: Bad Type: Int ```
I think it's maybe better to add the dependent type interpolation support in the compiler itself. I propose opening a thread on contributors.scala-lang.org to discuss this further.
I'm not sure if you thought about the type system when a method application is split to blocks. Before this SIP type arguments are inferred as `Nothing` because they all...
Fixed in https://github.com/lampepfl/dotty/pull/13724