Apart from the 'tie' operator, there is now also the 'join' function. So you can do either
ex1:={A,B};
ex2:={C,D};
ex3:= @(ex1) ~ @(ex2);
to get {A,B,C,D}
, or you can do
ex1:={A,B};
ex2:={C,D};
ex3 = join(ex1, ex2)
Join on a single element and a list will just add that element to the list, and join on two single elements will create a two-element list.
This was a quick hack not really thought through very deeply, so please report issues with this if you find any.
Added: Just to explain why this was all necessary: I am working on fast numerical evaluation of symbolic expressions. This frequently involves component-wise addition of lists or nested lists. Since both Numpy and Mathematica use '+' for component-wise list addition, I decided to follow that.