/*
* call-seq:
* dtable.pow(number) -> a_dtable
* dtable.pow(other) -> a_dtable
* dtable.raised_to(number) -> a_dtable
* dtable.raised_to(other) -> a_dtable
* dtable ** number -> a_dtable
* dtable ** other -> a_dtable
*
* When argument is a number, this operation returns a copy of _dtable_ with each entry x replaced by x ** _number_.
* When argument is a data array, this operation returns a copy of _dtable_ with each entry x replaced
* by x ** the corresponding entry in the _other_ data array.
*
*/ VALUE dtable_pow(VALUE ary, VALUE arg) {