initializing w/ undef, HasSeq() etc, SCIENCE Next Wave

Georg Fuellen fuellen@dali.Mathematik.Uni-Bielefeld.DE
Thu, 27 Feb 1997 18:28:27 +0000 (GMT)


Below are 2 good points made by Steve A. Chervitz.

Also, Science Next Wave, the ``scientist's source for career and job-hunting 
information'', by the American Association for the Advancement of Science, 
summarizes the ``Hot Skill sets'' in their ``Bioinformatics Skills 
Special Issue'' (Feb 14, 1997) like this:

>>>>>
 1) UNIX & PERL
 2) genetics
 3) algorithms and bioinformatics tools
 4) database design
<<<<<

:-) :-)

(To read the articles, you need to register with Next Wave, see 
http://www.nextwave.org/ )

> Georg,
> 
> > -re- Molecule.pm: Do you have a rationale for initializing w/ undef ?
> 
> Primarily for documentation purposes, I've been listing all data members 
> for a class at the top of the _initialize() method. The set methods 
> really take care of the initialization. I used undef so that the variable 
> wouldn't take up space unless necessary. My accessors then check 
> if(defined xxx) for the member in question.

Good idea - I've made a note in the TO-DO section of the Bio::UnivAln POD.

> > Instead of HasSeq, I would use the standard accessor which may return 
> > "" or 0 ?! 
> 
> I have no objections except if the data member is an object and the  
> accessor returns 0 instead of reference, dereferencing it will generate 
> a run-time error (e.g., $gene->blast()->hits()). Another concern is
> if the data member in question is very large or would take time to access 
> and you are not really interested in obtaining the data, just knowing if 
> it has been set for the object. 

Good points - again, I plan to do this in the next release !

best wishes,
georg