Given a type, I want an implicit that proves there is no implicit value in scope for it, e.g…
def notANumber[A](a: A)(implicit ev: Not[Numeric[A]]) = println(s"Definitely not a number: $a")
Towards this purpose I used:
Question: can we do this without a macro?
I seem to remember that there exists a solution based just on implicits hackery, which works by creating a divergence in case the implicit value exists. And I think it’s included in Dotty’s standard lib. But my google-fu is failing me now. Can you help me find it?