On Wed, Apr 16, 2014 at 01:53:00PM -0700, Nick Cameron wrote:
> As an alternative, could we use a tuple of types for Self? I.e.,
> allow `trait Add<LHS, RHS, SUM>: (LHS, RHS)` (or something to bound
> `Self` to tuples) and `impl Add<int, int, int> for (int, int)`,
> etc. I'm sure we can do better than this rather verbose first
> attempt.

I thought of this and dismissed it for some reason. Maybe because I
thought input type parameters would come up more often. But I've not
found them in practice almost anywhere in the standard library besides
the operator traits. Given the coherence rules I was planning to use,
I think tuples *would* work, so that might be an appealing
simplification.