perl -w -le 'sub is_const { !eval { ($_[0]) = $_[0]; 1; } } print "undef is ",(is_const(undef)?"":"not")," a constant"' undef is not a constant perl -MDevel::Peek -le 'Dump(undef)' SV = NULL(0x0) at 0x8120d38 REFCNT = 2147483622 FLAGS = (READONLY)