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