It seems there is a small bug in the function Map of the LinearAlgebra package ("inplace" map for Matrix and Vector).
Let A be a Matrix with numerical entries and with "datatype=anything"
.
Then Map(evalf[n],A)
applies evalf[Digits]
whatever is n. The same occurs for
Map(x->evalf[n](x),A)
. Map(evalf,A,n)
does nothing. However Map(x->evalf(x,n),A)
works fine.
The problem with your final solution, Map(x->evalf(x,n), A)
, is that it generates 1 extra
high-level procedure call per represented entry of A.
It is hard to imagine a situation where this would be worth the extra time compared to the extra memory that is required by regular map.