Currently it is simply '+'.

The thing that prompted this is issue #1520 -- operator overloading.
Delegating + on non-builtin-numeric types to a `num` interface that
implements methods add/sub/mult/div/rem/neg methods seems elegant, and
similar to Haskell's approach. Vector-concatenation + messes
everything up though, since vectors can't meaningfully implement the
full num interface.

In general, it seems preferable to have operators mean a single thing.
The code in the compiler that handles + is often quite clumsy,
precisely because two very different things have to be dealt with.

I briefly floated the idea on IRC to just get rid of a concat binop
altogether, and use library calls for this, but it seems people like
their concatenating operator, so ++ seems a good choice (it has
something of a precedent in Haskells list append operator).

Those who oppose, start arguing.
_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to