I'm trying to compare between Sqrt[3.] and Sqrt[3]. To display the result, I mapped HoldForm to display the expressions on the left hand column (code at end), but it seems like Sqrt[3.] had been evaluated before it was mapped on to. Is there any way to stop that to happen?

Grid[Prepend[{HoldForm[#], Precision[#],
MachineNumberQ[#]} & /@ {Sqrt[3.], Sqrt[3]}, {"Number",
"Precision[]", "MachineNumberQ[]"}],
Frame -> All]

Sqrt[3]evaluated is displayed asSqrt[3]- its value. Try replacing it withSqrt[4]with and without theUnevaluated- I'm sure the lightbulb will come on, if not comment back. edit: hang on - I may have misread your comment question... if so, I'll delete this comment reply. - In any case, look at details in the docs forMap- note that it constructs/evaluates the expressions. – ciao Jun 21 '14 at 10:45