The notation `Copyable and Comparable` is already supported.

You'll be able to check for effects in concepts by just using boolean 
expressions based on the compile-time reflection capabilities of the language. 
Just like we have `typetraits` to check various characteristics of types, we'll 
have a similar "call traits" module that can answer questions about call 
expressions.

@mora, hmm, you are right. This example requires some form of back-tracking to 
get it right, but I'll think about it - perhaps I'll be able to come up with 
some kind of supporting data structure to take care of such "entangled" types. 
You know your language is getting overly complicated when you start borrowing 
terms from quantum mechanics :)

On a more serious note, I'd rather limit what's possible in these highly 
unlikely type class against type class scenarios than to cripple the 
capabilities of the concepts in the general case (for example, the problem here 
can be ruled out if I allow only a single superposition collapse during any 
given signature matching).

Reply via email to