Thanks! I 'll give her a go that route. I like the idea just need time to do it then polish it up.
Thanks Dan > > > Well, any other ideas on how I can have a hundred scripts > all use the > > same settings and make it easy to change any of them at > will without > > having to go edit a hundred files would be nice. ... > > To share configuration variables in one place for lots and lots of > > scripts to use instead of having to put them in each script and then > > on echanges and having to go through a hundred scripts all over the > > place to change them. > > Sounds like you have a reasonably well-planned solution, and > I think it'll work. Still, you might consider making a proper module. > e.g.: > > the configurator :) > =================== > > package Configurator; > > our %value; > > sub import { > for (<DATA>) { > chomp; > my($k,$v) = split /=/; > $value{$k} = $v; > } > } > 1; > > __DATA__ > key1=value1 > other=whatever > > > now, in your script: > ==================== > use Configurator; > print "$Configurator::value{other}\n"; > > output: > ======= > whatever > > It probably seems convoluted and contrived, but then every > script that uses the Configurator (or whatever you call it :) > will have access to the same data, editable and alterable in > the one location after the __DATA__ tag in the module itself. > > More importantly, you can then put other tools such as > utility functions in it, and they'll be there for all scripts > using them without potentially polluting your namespace. Then > you're only a couple of steps away from writing full-blown > object modules, and as your project expands, you can > completely retool the configuration system underlying the > module, maybe to use a real database and some serious > conditionals.... but scripts using the object interface > wouldn't have to be changed. Replacing the engine wouldn't > require a new steering wheel. > > my $conf = new Configurator @arglist or die "Can't initialize: $!"; > if ($conf->ready) { > do_stuff(); > } else { > $conf->update or $conf->something_else; > } > > You get the idea. What's going on in the object? An oracle > database interface? MySQL? A DBM file? Maybe just a flatfile > read, or even the simplistic <DATA> read from stuff inside > the module file itself? You don't know without opening the > module, and so the scripts coded that way don't have to care. :) > > Scalability! =o) > > Could you do that with a do() or require()? Probably, but > it's nonstandard, and use() has more tools and toys built in. > Use() it. :) > > __________________________________________________ > Do you Yahoo!? > Yahoo! Shopping - Send Flowers for Valentine's Day http://shopping.yahoo.com -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]