in reply to Difference between tie and bless

Bless just tags the variable with a namespace. The effect is that perl looks in that namespace (and its @ISA list of other namespaces) for methods. Applying ref to the variable returns the namespace tag instead of one of the perl types.

Tie magically connects a variable to one of a special family of modules. That family is distinguished by having the special tie methods like TIEARRAY(), FETCH(), and STORE() defined. The tied variable has value semantics rather than reference semantics.

The bless function is more fundamental. You'll find it inside each TIE*() constructor.

After Compline,
Zaxo