def reshape(*ret_shape)
      target_size = ret_shape.inject 1, :*
      if target_size != size
        raise "Target is of size #{target_size} but should be of size #{size}"
      end
      Hornetseye::MultiArray(typecode, ret_shape.size).
        new *(ret_shape + [:memory => memorise.memory])
    end
def reshape(*ret_shape)
      target_size = ret_shape.inject 1, :*
      if target_size != size
        raise "Target is of size #{target_size} but should be of size #{size}"
      end
      Hornetseye::MultiArray(typecode, ret_shape.size).
        new *(ret_shape + [:memory => memorise.memory])
    end
Get array with same elements but different shape

 The method returns an array with the same elements but with a different shape.
 The desired shape must have the same number of elements.

 @param [Array<Integer>] ret_shape Desired shape of return value

 @return [Node] Array with desired shape.