When you say "addObject", Scripting Bridge has to send an event to
the application to do that. The problem is that there are at least
three different ways to express that (with a position, without a
position, and with a container; more if you count the different
ways of expressing a position), and a lot of applications only
understand one of them. We went with the one that all Cocoa apps
understand ("...at end of..."), and there's no way to override
that. [1]
Defective by design, in other words.
By design, yes; "defective" is a matter of perspective. On the one
hand, it doesn't work correctly with all existing applications. On
the other hand, do you really want to have to know the particular
style of "make new" that each application supports? I don't think so.
That said, we could have picked a better single form for Scripting
Bridge to insist on -- the explicit position, while any app ought to
be able to handle it, is not really the normal idiom. I've written
this up as <radar:5585347>.