[Bioperl-l] Bio::Root::IOManager: used?

gert thijs gert.thijs@esat.kuleuven.ac.be
Mon, 25 Sep 2000 18:24:38 +0200


Hilmar Lapp wrote:
> 
> Dear all,
> 
> there is a module Bio::Root::IOManager, which seems to be supposed to
> take over all those tasks related to file opening, closing, file handles,
> reading (well, not yet) etc. Nevertheless, all modules concerned with
> handling files (i.e., all parsers, SeqIO/*, LargePrimarySeq, AlignIO)
> appear to deal with this on their own.
> 
> Is there a common sense that we should stay away from delegating file
> handling to Bio::Root::IOManager? Likewise, is there a common sense that
> modules accessing files should rather duplicate the according code
> instead of delegating this to a central module?
> 
> Finally, there is a similar question concerning network access and
> URL-based queries: do people think that each module which needs it shall
> implement it itself, or rather delegate to a yet to be created
> Bio::Root::NetManager? This of course affects the proxy/firewall problem,
> too (i.e., the place of where to solve it).
> 
>         Hilmar
> 

I have been using bioperl for some time now and I have a small remark
regarding IO handling. I don't like writing intermediate files to the disk
when executing a script, so I really like the concept of tieing a filehandle
to a string with IO::Scalar.
But in my experience this approach doesn't work for all the modules, I used,
that accept filehandles as inputs. If I remember correctly, I had some
problems passing such a tied filehandle to some of the blast modules. 


Gert Thijs


-- 
==========================================================
+ Gert Thijs              gert.thijs@esat.kuleuven.ac.be +
+                                                        +
+ Dept. Elektrotechniek ESAT-SISTA                       +
+ Kardinaal Mercierlaan, 94                              +
+ B-3001 HEVERLEE  Belgium                               +
+ Tel :  +32-16-32 18 84 ---- Fax : +32-16-32 19 70      +
==========================================================