Dear PETSc, in writing the foreign-function wrappers for the library in Haskell, I found the need for an operation that copies the contents of a Mat or Vec, in the spirit of the Matlab socket-based ones (in both directions).
Roughly speaking, I need to represent the `peek`, `sizeOf` and `alignment` operations (or an alternate PetscViewer that dumps in the memory of a single node). Of course this wouldn't be used in cases when the sum of the local block sizes exceeds some maximum allowed by an individual machine. Thank you in advance, Marco Zocca
