Nitpick: I prefer the original approach, which sets $LJHOME = $ENV{LJHOME} immediately, and then all future instances use that. That way if something needs to change, we only ever touch the one variable...