
(*
 * Test if a value has been defined for an expression.
 *)

Begin["System`"]

ValueQ::usage = "ValueQ[expr] gives True if a value has been defined for expr, and gives False otherwise."

Begin["`Private`"]

Attributes[ValueQ] = {HoldAll}

ValueQ[expr_] := ! SameQ[Hold[Evaluate[expr]], Hold[expr]]

Protect[ValueQ]
End[ ]
End[ ]
