/*
* call-seq:
* dvector.sub!(number) -> dvector
* dvector.sub!(other) -> dvector
*
* When argument is a number, each entry x in _dvector_ is replaced by x - _number_.
* When argument is a vector, each entry x in _dvector_ is replaced by x -
* the corresponding entry in the _other_ vector.
*
* a = Dvector[ 11, -5, 2 ]
* a.sub!(3) -> Dvector[ 8, -8, -1 ]
* a -> Dvector[ 8, -8, -1 ]
* b = Dvector[ 7, 4, -10 ]
* a = Dvector[ 11, -5, 2 ]
* a.sub!(b) -> Dvector[ 4, -9, 12 ]
* a -> Dvector[ 4, -9, 12 ]
*/
VALUE dvector_sub_bang(VALUE ary, VALUE arg) {