Я нахожу следующий анти-шаблон, повторяющийся в моих Perl-скриптах: скрипт содержит некоторые настройки, специфичные для машины/настройки, которые я храню в скрипте как константы, в то время как остальная часть скрипта носит общий характер:
#!/usr/bin/perl
use strict;
use warnings;
# machine specific settings at the start of the script.
my $SETTING_1 = "foo";
my @SETTING_2 = ("123", "456");
my $SETTING_3 = "something";
# general part of script follows.
...
Этот шаблон несколько удобен при работе на одной машине, но как только я хочу распространить сценарий на несколько машин, начинаются проблемы, поскольку я должен отслеживать, чтобы не перезаписать часть настроек новыми обновлениями в общей части.
Правильное решение, очевидно, состоит в том, чтобы иметь один общий файл сценария и читать файл конфигурации, специфичный для среды, в которой выполняется сценарий.
Мой вопрос: Какой модуль CPAN вы бы порекомендовали для решения этой проблемы? Почему?