[Bioperl-l] different syntaxes for SeqI constructor and Factory constructor?
bosborne11 at verizon.net
Thu Dec 7 14:32:21 EST 2006
The latest StandAloneBlast takes "dashed parameters", as in:
@params = (-database => 'swissprot',-outfile => 'blast1.out');
$factory = Bio::Tools::Run::StandAloneBlast->new(@params);
my $factory = Bio::Tools::Run::StandAloneBlast->new(-program =>"wublastp",
-e => 1e-20);
So that's why I asked "what version?"
Someone made the change to allow dashes in @params a few months ago and I
believe that that someone was you!
On 12/7/06 1:44 PM, "Chris Fields" <cjfields at uiuc.edu> wrote:
> On Dec 6, 2006, at 9:13 PM, zhihua li wrote:
>> Hi netters,
>> Recently I found this:
>> For constructing a new SeqI object, I had to write:
>> -file => '/home/myfile',
>> -format => 'Fasta'); #Note the dash before the
>> two arguments.
>> If I omitted the dash:
>> file => '/home/myfile',
>> format => 'Fasta');
>> I'd get error:
>> MSG: Unknown format given or could not determine it 
>> STACK Bio::SeqIO::new /usr/lib/perl5/site_perl/5.8.7/Bio/SeqIO.pm:377
>> So it seems to me that the dashes before the arguments are
>> essential. However, when I tried to build a factory for
>> StandaloneBlast, I found the other way around.
>> If the script had the dash:
>> -program => 'blastn',
>> -database => '/home/mydatabase');
>> I'd get the error message: MSG: Unallowed parameter: - !
>> STACK Bio::Tools::Run::StandAloneBlast::AUTOLOAD /usr/lib/perl5/
>> STACK Bio::Tools::Run::StandAloneBlast::new /usr/lib/perl5/
>> If I left out the dash by saying:
>> program => 'blastn',
>> database => '/home/mydatabase');
>> Everyting is fine.
>> Now I'm confused. Why sometimes I have to add the dash, while
>> sometimes I'm not allowed to?
>> Thanks in advance!
> I agree that this should be more consistent. Does anyone know the
> reasoning for this?
> Christopher Fields
> Postdoctoral Researcher
> Lab of Dr. Robert Switzer
> Dept of Biochemistry
> University of Illinois Urbana-Champaign
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
More information about the Bioperl-l