Хотя это, вероятно, не способствует происхождения истории обоих случаях ...
В Perl, ведущий Подчеркивание социальный контракт для частного члена бедняка. В классическом Perl OOP нет частных членов, поэтому использование подчеркивания - это средство для сообщения о том, что это поле или метод не следует касаться, изменять или вызывать напрямую.
На практике я обычно использую вспомогательное подчеркивание для воссоздания переменной, например, когда я рефакторинг. Исходная переменная будет занята старым, дерьмовым интерфейсом, а новая переменная, используя то же имя, будет использовать блестящий, красивый интерфейс.
var dog = 'golden retriever';
var dog_ = BRD_GOLDEN_RETRIEVER;
process(dog);
Shelter->Process(dog_);
Очевидно, что сторонняя сторона является временной. Существование собаки преходяще.