Camelia, the Perl 6 bug

IRC log for #bioperl, 2011-02-24

| Channels | #bioperl index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:02 ozux left #bioperl
00:35 rdesfo joined #bioperl
00:36 rdesfo left #bioperl
01:05 rdesfo joined #bioperl
01:19 rdesfo left #bioperl
01:44 rdesfo joined #bioperl
01:54 rdesfo left #bioperl
04:14 zenman_ joined #bioperl
04:36 zenman_ left #bioperl
06:54 kyanardag joined #bioperl
07:16 kyanardag left #bioperl
11:15 crimson22 joined #bioperl
11:22 crimson22 left #bioperl
13:19 CIA-44 bioperl-live: DaveMessina master * r78b7667 / (Bio/SeqIO/seqxml.pm t/SeqIO/seqxml.t t/data/seqxml.xml): fixing erroneous fiddly XML namespace blargle. - http://bit.ly/hPZpZC
13:19 CIA-44 bioperl-live: DaveMessina master * ra11a54a / Bio/Range.pm : Merge branch 'master' of github.com:bioperl/bioperl-live - http://bit.ly/eFnrAN
14:34 rdesfo joined #bioperl
14:39 zenman_ joined #bioperl
14:57 zenman_ left #bioperl
17:19 Lynx_ left #bioperl
17:21 Lynx_ joined #bioperl
17:27 Dezin joined #bioperl
17:27 Dezin aaaaaaaaaand im back
17:28 Dezin anyone know if the location function/object for seqIO::genbank has a complement version/object
17:30 Dezin not seqio but seq
17:30 rbuels Dezin: complement version/object?  i don't understand
17:30 rbuels Dezin: reverse complement?
17:31 Dezin like theres the seq::genbank->location->start
17:31 Dezin but i need to know if the sequence is on the completment strand
17:31 Dezin so wondering if there is seq::genbank->location->comp
17:31 Dezin or something
17:33 Dezin o actualy
17:33 Dezin correction
17:33 Dezin its seq::genabk->seq_Features->location->start
17:34 rbuels Dezin: oh.  you probably want ->strand.
17:34 Dezin ahhh there it is thx
17:34 rbuels Dezin: location->strand.  -1 is reverse strand, 0 is no info, 1 is forward strand
17:34 rbuels (usually)
17:35 Dezin awsome
17:37 Dezin works like a charm
17:37 Dezin like how charms work
17:37 Dezin peace
17:37 Dezin left #bioperl
17:53 philsf joined #bioperl
17:53 philsf left #bioperl
17:53 philsf joined #bioperl
18:01 * pyrimidine is confused, Bio::Seq doesn't have a location method, but Bio::SeqFeature::Generic does
18:01 pyrimidine oh well...
18:32 rbuels pyrimidine: http://search.cpan.org/~rbuels/Bio-GFF3-0.1/
18:32 rbuels pyrimidine: it escapes everything properly!
18:32 rbuels pyrimidine: can you believe it???
18:32 pyrimidine left #bioperl
18:32 rbuels doesn't care.  hates me.
18:32 pyrimidine joined #bioperl
18:32 * rbuels sighs
18:33 pyrimidine hah
18:33 pyrimidine hit the close tab by accident
18:34 rbuels pyrimidine: it is not a parser.  it is not exciting.
18:34 rbuels pyrimidine: but i think this is an example of how things should be structured for most formats.
18:34 rbuels pyrimidine: i.e.  base-level functions, that can be used on their own
18:35 rbuels pyrimidine: then a low-level parser, that can be used on its own
18:35 pyrimidine rbuels: will give it a look
18:35 rbuels pyrimidine: and *then* use those things to make a bioperl seqio.
18:35 pyrimidine right, completely agree
18:35 rbuels pyrimidine: Bio::GFF3::LowLevel is the low-level functions.
18:37 rdesfo pyrimidine: hello
18:37 pyrimidine o/
18:37 rdesfo I started a rough draft for GSOC proposal...would you be able to look at it?
18:38 pyrimidine rdesfo: yes, I can. Link?
18:39 pyrimidine rbuels: so, it is a parser?  Looking at the low-level API, gff3_parse_feature() seems to indicate such...
18:39 rdesfo do you have an email I can send a link to?  I have it in google docs
18:43 rbuels pyrimidine: well, it will parse an individual feature line.  but that's not a whole parser.
18:45 pyrimidine true
18:46 rbuels pyrimidine: i'm using your new Bio-FeatureIO for a thing right now, btw
18:46 rbuels pyrimidine: works so much better.
18:46 rdesfo Would it be possible to get the lectures that are listed Talk:Tutorials  page?
18:46 pyrimidine rbuels: I'm sorry :)
18:48 pyrimidine rdesfo: looks like those links are to Jason's old Duke page.  I think they may be up on slideshare.
18:49 dukeleto rbuels: no POD in BIO/GFF3.pm ? Bad boy.
18:49 rbuels dukeleto: oh, did that get into the upload?
18:49 * rbuels looks
18:49 dukeleto rbuels: no, there seems to be no Bio/GFF3.pm
18:49 rbuels dukeleto: no, it didn't.  that doesn't exist.  what would i put in there?  too general.
18:50 dukeleto rbuels: like I said. There is no POD in the nonexistant file
18:50 pyrimidine rdesfo: http://www.slideshare.net/jstajich/presentations
18:50 dukeleto rbuels: i was guessing it would be an intro to the other modules
18:50 rdesfo pyrimidine: thanks
18:50 dukeleto rbuels: many people will try "perldoc Bio::GFF3" and be sad
18:50 rbuels dukeleto: they will?
18:50 pyrimidine rdesfo: only a few are there
18:51 rbuels i guess I could make a Bio/GFF3.pod
18:51 pyrimidine rbuels: I would, though that is also a problem with bioperl (I have a BioPerl.pm stub module I think in the last release for that purpose)
18:54 pyrimidine rdesfo: http://fungalgenomes.org/~jst​ajich/presentations/BioPerl/
18:54 rdesfo left #bioperl
19:21 pyrimidine rbuels: I'll probably have Bio::FeatureIO use Bio::GFF3, no sense in reinventing things there.
19:22 rbuels pyrimidine: yes, that's a good idea.
19:22 rbuels pyrimidine: some of the other low-level GFF3 things could go in there too i think
19:22 rbuels pyrimidine: extracted from FeatureIO
19:24 pyrimidine rbuels: any intent on gff2/gtf-level parsing?
19:24 * rbuels wrinkles his nose
19:24 pyrimidine it will be requested at some point
19:24 pyrimidine though not by me
19:24 rbuels heh
19:25 pyrimidine would be easy enough to add, just using gff2_* functions
19:25 pyrimidine but that's LHF for another day
19:25 rbuels but then the dist wouldn't be GFF3-only.
19:25 rbuels :-\
19:26 * rbuels thinks pyrimidine might be right
19:26 pyrimidine maybe rename to Bio::GFF
19:26 rbuels aiiieee
19:26 pyrimidine :P
19:27 * rbuels can feel the slimy claws of legacy scrabbling for purchase on the chromed surface of his software
19:27 pyrimidine heh
19:28 rbuels there's nothing tricky about gff2 parsing though is there?
19:28 rbuels does it even have escaping?
19:28 pyrimidine oh, just wait.  Then you'll have the ones who want URI encoding to be optional
19:28 rbuels F them.
19:28 pyrimidine rbuels:  not really, attributes are split on the first space, and I think values are quoted
19:29 pyrimidine URI::Escape, IIRC
19:30 pyrimidine it exports uri_escape, uri_unescape
19:31 pyrimidine then you'll have users who want to split on spaces instead of tabs
19:31 pyrimidine etc etc etc
19:31 * pyrimidine thinks another 'F them' is on the horizon
19:32 * rbuels watches it zoom overhead at 500 knots, carpet-F-bombing
19:35 rbuels pyrimidine: well, there could be a Bio::GFF2::LowLevel and a Bio::GTF::LowLevel also.  actually it would make sense to have those because the parsing and formatting code is going to be quite different between them
19:36 rbuels pyrimidine: and if somebody wants to write those, then I'll rename the dist Bio::GFF, and they can be in it.
19:36 pyrimidine rbuels: probably a good idea.  If you make me collab I can chip in
19:37 * rbuels is glad he doesn't have a Bio::GFF3 POD.
19:37 rbuels pyrimidine: i think you are already one ....
19:37 * rbuels checks
19:37 pyrimidine though I think I may be already
19:37 rbuels yeah you are
19:37 pyrimidine ok, makes it easy then
19:38 pyrimidine ...and, we can work on other low-level parsers in separate releases for other formats as needed (genbank, EMBL, etc)
19:39 rbuels pyrimidine: actually, ken clark has his own genbank parser, i discovered today
19:39 pyrimidine in their own dist of course
19:39 rbuels pyrimidine: did you know that?
19:39 pyrimidine *dists
19:39 rbuels pyrimidine: http://search.cpan.org/~kcl​ark/Bio-GenBankParser-0.05/
19:39 pyrimidine yes, I think it uses Parse::RecDescent
19:39 * rbuels nods
19:40 * rbuels chuckles at how out of date ken's gravatar is
19:40 rbuels he lives in the New Mexico mountains and looks like a damn hippy now
19:40 rbuels hehe
19:40 rbuels he should start a cult
19:42 deafferret with pointy hats
19:44 pyrimidine made of tin foil # to keep the CIA from spying
19:44 dbolser left #bioperl
19:45 * rbuels has to kill one of his brain's processes after it started thinking about perl, cults, and tin-foil hashes
19:45 pyrimidine Wonder how Bio::GenBankParser is.  I actually have a pure perl generic parser buried in Bio::SeqIO::*driver modules for all three major text formats (gb, embl, uniprot).  Might be worth tearing that out and releasing it as something else...
19:45 dbolser joined #bioperl
19:46 rbuels pyrimidine: might be.
19:47 pyrimidine Any examples of how Bio::GFF3 handles directives?
19:47 pyrimidine or embedded FASTA?
19:49 pyrimidine rbuels: ^^^
19:59 rbuels pyrimidine: doesn't.
19:59 rbuels pyrimidine: that's why it's not a full parser.
19:59 pyrimidine hmm
19:59 pyrimidine though, that
19:59 pyrimidine 's easily dealt with
20:00 rbuels pyrimidine: LowLevel could have a gff3_parse_directive function, that would fit in.
20:01 pyrimidine right, just trying to work out how to avoid 'when (/^\#/) {gff3_parse_directive($_)} when (/^>/) {gff3_parse_fasta} ... '
20:03 pyrimidine the way I dealt with it was to indicate the mode or type data returned, with three possible modes: directive, feature, sequence (I think)
20:04 pyrimidine but that could be a layer above the specific gff3_parse_feature/directive functions (like a generic gff3_parse_line)
20:05 rbuels pyrimidine: yes, it would be a layer above.
20:06 rbuels pyrimidine: because LowLevel is for implementing things like http://search.cpan.org/~rbuels/Bio-GFF3-0.​1/lib/Bio/GFF3/Transform/SyncDirectives.pm
20:07 rbuels pyrimidine: or .... 'loop through my gff3 file and fix the Note attribute if the source is X'
20:07 pyrimidine rbuels: makes sense
20:07 rbuels pyrimidine: (loop through my 800MB gff3 file)
20:08 rbuels this module mostly exists to deal correctly with escaping, lol
20:09 rbuels because that's the only thing that makes it hard to write a 2-line thing that reliably does 'loop through my gff3 file and fix the Note attribute if the source is X'
20:10 rbuels so, once you start *really* parsing gff3, you need an object model.  because then the parser has to answer the question, 'what type is this line'
20:10 rbuels so you either need constants or special strings, or objects, that say 'feature', 'directive', 'comment'
20:10 pyrimidine right, that's what featureIO currently has
20:10 * rbuels nods
20:12 pyrimidine next_dataset() is the parser, so calling 'while (my $data = $io->next_dataset()) {...}' iterates through the entire file, returning data until EOF
20:13 pyrimidine if one wanted to bail, one could check the data (hashref) for a specific mode, such as 'sequence', and note that file position
20:14 pyrimidine layering in URI escape/unescape should be easy, just noticed it isn't there :(
20:15 pyrimidine oh, forgot it distinguishes between comments and directives, huh.
20:30 philsf left #bioperl
20:32 driley left #bioperl
20:37 driley joined #bioperl
20:56 CIA-44 Bio-FeatureIO: Robert Buels master * r8b2e05d / (lib/Bio/FeatureIO/gff.pm t/gff3.t): parse gff3 phase as a tag - http://bit.ly/dZeuYw
21:00 rbuels pyrimidine: that look right?
21:00 rbuels pyrimidine: currently the phase is getting dropped
21:00 pyrimidine rbuels: yeah
21:01 pyrimidine the tests probably weren't checking for it
21:01 pyrimidine s/probably//
21:01 rbuels pyrimidine: yeah, i added a test on one of the CDS's in that file that checks for the phase
21:01 rbuels i'll make the others check too...
21:01 * rbuels does so
21:02 pyrimidine rbuels: ok
21:04 * pyrimidine wonders....
21:04 pyrimidine is phase being saved as a first-class attribute, or as an attribute tag?
21:05 rbuels pyrimidine: tag
21:05 CIA-44 Bio-FeatureIO: Robert Buels master * r0ccb45a / (lib/Bio/FeatureIO/gff.pm t/gff3.t): add more gff phase-parsing tests. make undefined phase still result in a phase tag, but no values for it - http://bit.ly/fQxM6x
21:05 rbuels pyrimidine: SeqFeatureI doesn't have a phase attr
21:05 pyrimidine right, I'm wondering how that collides with Lincoln's Bio::SF::Lite
21:06 rbuels ooh.
21:06 rbuels hmm
21:06 pyrimidine yeah, looks like lincoln is setting phase as first-class
21:07 pyrimidine Bio::SF::Lite, line 632
21:07 rbuels seems kind of silly to me.  most features don't have a phase.
21:07 rbuels having a whole gff3 column for it, and making it a first-class attribute, doesn't really make such great sense.
21:08 pyrimidine I think it's a carryover from prior GFF formats
21:08 rbuels pyrimidine: ok, the phase can go *both* as first class (to be dropped or not), *and* as a tag, maybe?
21:09 pyrimidine I think we just leave it up to the implementation
21:09 rbuels pyrimidine: i mean in the parser
21:09 rbuels pyrimidine: it might be theoretically emitting Lites, mightn't it?
21:09 * rbuels high-fives himself for using mightn't
21:10 rbuels oh wait, that's just clapping
21:10 rbuels o,O
21:10 pyrimidine it could.  The idea is the class can be stipulated
21:10 rbuels right.
21:10 rbuels so we want the Lite to get the phase
21:10 rbuels in its attr.
21:11 pyrimidine I think we just speak to the interface.  If there is no phase() method in the interface, we should probably add it.
21:11 rbuels but most features don't have or need a phase.
21:12 rbuels doesn't make sense to have it in SeqFeatureI
21:12 rbuels i just think Lincoln's being too phasey.
21:12 rbuels a phase-monger.
21:12 rbuels only feature that needs a phase is a CDS, that i can think of, in fact.
21:14 pyrimidine So maybe we should just catch 'phase' if it's passed in as an argument, then try to do the right thing with it.
21:14 pyrimidine (for Generic, add it to tags)
21:15 rbuels eh, that's reasonable.  either that, or have Lites emitted by gff.pm have an extra phase tag that repeats their phase attr.
21:15 * rbuels will agree to either.
21:15 pyrimidine I think it's more consistent to store the phase as a tag, as you indicated
21:16 rbuels (if we add something to SeqFeatureI, then we have to poke two different dists)
21:16 pyrimidine then phase() would call get_tag_values('phase')
21:17 rbuels Lite's phase()?
21:17 pyrimidine yes
21:17 rbuels eh.  maybe.
21:18 CIA-44 Bio-FeatureIO: Robert Buels master * r790a3fa / lib/Bio/FeatureIO/gff.pm : offer parsed gff phase as both a first-class attr and as a tag value - http://bit.ly/ggKQaV
21:18 rbuels pyrimidine: ok, so with that, most features will drop the -phase in the attrs, but Lites will pick it up as an attr, and also have a phase tag
21:18 pyrimidine the problem is, what happens if you want to set phase()?  $sf->phase(1)
21:20 rbuels yeah, storing it in 2 places sucks.
21:21 rbuels hmmm.
21:21 pyrimidine yeah, so setting one (attr) won't change the other (tag)
21:21 * rbuels nods
21:21 rbuels as it stands now, the only object that has this problem is Lite
21:22 pyrimidine yes, not sure why it has to be special in that regard.  There are some evil hacks in Lite
21:22 rbuels maybe adding a phase accessor to SeqFeatureI is the way to go.
21:22 rbuels that by default puts the phase in tags
21:23 rbuels (stores it in tags)
21:23 rbuels and then Lite will be overriding that and storing it in its body, which is fine
21:23 pyrimidine yeah, I think so
21:23 sl33v3_ joined #bioperl
21:24 rbuels which i think is what you suggested at the outset.
21:24 * rbuels chuckles
21:24 pyrimidine :)
21:25 sl33v3 left #bioperl
21:25 sl33v3_ is now known as sl33v3
21:26 pyrimidine yeah, it's kinda a pain to add another method, but at least it makes things more consistent
21:27 * rbuels is already mostly through adding it
21:30 CIA-44 Bio-FeatureIO: Chris Fields master * r3ba9f7a / (lib/Bio/FeatureIO/gff.pm t/gtf.t): add tests for ensembl GTF, deal with empty attributes line - http://bit.ly/hyErn9
21:30 pyrimidine heh
21:31 pyrimidine I think I'm going to remove a lot of the higher-level methods in FeatureIO::gff, just seems silly
21:32 dnewkirk joined #bioperl
21:32 * rbuels cuts and pastes the explanation of phase from the gff3 spec
21:33 pyrimidine funny how some insist phase == frame, even though the spec is pretty specific about the differences
21:35 rbuels gah, now i have to add PHASE to set_attributes in Bio::SeqFeature::Generic
21:36 rbuels anyplace else?
21:38 pyrimidine can't think of any
21:39 pyrimidine those are the two most commonly used SF classes, and we're throwing out B::SF::Annotated
21:39 deafferret ->set_phaser('stun')
21:39 pyrimidine deafferret: you know that perl6 has phasers, right?
21:40 deafferret and sharks with freaking lasers!
21:40 pyrimidine http://perlcabal.org/syn/S04.html#Phasers
21:40 dnewkirk It better since ew'll be flying spaceships by the time it's fully done...
21:40 * rbuels hates the tag system's interface
21:40 pyrimidine dnewkirk: you can already try it
21:41 dnewkirk I know, I was being facetious :)
21:41 pyrimidine rbuels: what do you hate about it?
21:41 rbuels return $self->has_tag('phase') ? ($self->get_tag_values('phase'))[0] : undef;
21:41 rbuels $self->remove_tag('phase') if $self->has_tag('phase');
21:41 rbuels gah
21:42 rbuels $self->get_tag_values('phase') #  DIES IF NO PHASE TAG
21:42 pyrimidine I think Lincoln bypasses the has_tag('foo') check
21:42 rbuels dumb.
21:42 pyrimidine agreed.  I don't like it either, but it's an implementation thing
21:42 * rbuels nods
21:42 pyrimidine unfortunately
21:43 * rbuels runs full tests before pushing
21:43 deafferret py<tab>: heehee
21:43 rbuels pyrimidine: he rewrites the tag system too
21:44 pyrimidine yeah, that whole dying on has_tag('') bit always seemed like getting my hand smacked for trying to get a cookie out of the jar
21:44 rbuels pyrimidine: *get_tag_values = \&each_tag_value;
21:44 pyrimidine heh, should be the other way around
21:44 rbuels pass, pushing.
21:45 pyrimidine \o/
21:45 rbuels oh, forgot to pull
21:45 * rbuels runs again
21:45 * pyrimidine withdraws 'o/' for the time being...
21:48 CIA-44 bioperl-live: Robert Buels master * r987eca5 / (3 files in 3 dirs): add phase attr to Bio::SeqFeatureI, to match Bio::SeqFeature::Lite - http://bit.ly/i1mc9s
21:48 CIA-44 bioperl-live: Robert Buels master * r40ce36c / t/SeqFeature/SeqFeature.t : add a couple more tests for new phase accessor - http://bit.ly/fVk2bQ
21:49 pyrimidine \o/
21:49 pyrimidine again
21:52 boegel joined #bioperl
21:52 boegel hi peepz
21:52 boegel is installing stuff in Perl always done through interactive installers?
21:52 rbuels boegel: sup homeslice
21:52 boegel it's bloody annoying when you're trying to make it fit in an automated installer
21:52 rbuels boegel: not always, no
21:53 boegel rbuels: seems to happen frequently though
21:53 rbuels boegel: it uses its defaults when it's running noninteractively.
21:53 boegel rbuels: CPAN configuration was already hell to get past (automatically)
21:53 pyrimidine cpanm
21:53 boegel it keeps asking questions, and I need to make sure the automated installer knows about them
21:54 boegel pyrimidine: hmm?
21:54 pyrimidine (aka cpanminus)
21:54 pyrimidine http://search.cpan.org/dist/App-cpanminus/
21:54 boegel pyrimidine: that does non-interactive installs?
21:55 boegel pyrimidine: but it's a cpan package, so I still needs to get past CPAN configuration first ^_^
21:55 pyrimidine yes, but you can also just download the source
21:55 pyrimidine http://search.cpan.org/CPAN/authors/id/M​/MI/MIYAGAWA/App-cpanminus-1.2001.tar.gz
21:55 boegel pyrimidine: it's not a Perl app?
21:56 pyrimidine it is
21:56 pyrimidine (a perl app)
21:56 boegel hmm
21:56 boegel thx for the suggestion, I'll take a look at it
21:57 pyrimidine boegel: here's a blog post about it: http://blogs.perl.org/users/ovid/20​10/04/is-cpanminus-the-future.html
21:58 rbuels pyrimidine, boegel: but the fact remains that the bioperl install can run noninteractively as it is.
21:58 rbuels pyrimidine, boegel: and so can the initial cpan configuration
21:58 rbuels pyrimidine, boegel: if they are running with no stdin
21:58 boegel pyrimidine: heh, I like the python vs perl example ^_^
21:59 boegel rbuels: if I run "perl -MCPAN -e shell" after installing Perl, it isn't really giving me much of an option
21:59 boegel rbuels: mind, I want some control over where CPAN puts stuff
22:00 pyrimidine local::lib
22:00 rbuels boegel: then you will want to just make a CPAN config file and use that.
22:00 boegel rbuels: but that doesn't mean I want to answer 999 other questions that I don't care about
22:00 rbuels boegel: and/or use local::lib
22:00 boegel hmmk
22:00 boegel I'm totally new to Perl
22:00 boegel and frankly, I don't care much about it
22:00 boegel but some of our users do, so I install it :)
22:00 pyrimidine any reason you have to use it?
22:01 boegel pyrimidine: I have to *install* it, not use it :)
22:01 pyrimidine ah
22:01 rbuels boegel: debian packages bioperl.
22:01 * boegel is more of a Haskell fan
22:01 pyrimidine yep
22:01 * boegel hides
22:01 rbuels boegel: and .... does fedora?
22:01 * rbuels not sure if they do
22:02 boegel rbuels: it probably does, but we don't want readily packaged stuff, we build our own stuff (we use non-standardish compilers)
22:02 boegel i.e. not GCC
22:03 pyrimidine does anyone in the bioinformatics community use Haskell?  It's a great language, just haven't seen much uptake...
22:03 pyrimidine in this community, that is
22:03 boegel not sure
22:03 boegel I'm not part of the bioinformatics community
22:04 boegel I'm a sysadmin, part of a team maintaining the HPC infrastructure
22:04 pyrimidine ok
22:04 boegel you wouldn't believe the kind of installation stuff we run in to
22:05 dnewkirk fedora does, yes
22:05 boegel e.g. stand-alone scripts that install binary stuff embedded in them
22:06 pyrimidine bioperl is pure perl; there may be some binary data used for tests, but that's not installed
22:06 rdesfo joined #bioperl
22:06 boegel or people using the default GCC opt level in their Makefile (which is -O0, i.e. no optimization at all => BAD IDEA)
22:06 boegel pyrimidine: the annoying thing about bioperl is the questions :)
22:06 rbuels boegel: bio software is mostly horrible.  as i'm sure you know.
22:07 boegel I don't want to hold hands with it, and stay up all night, I just want to freaking install the thing
22:07 * rbuels thinks boegel probably knows that better than anybody
22:07 boegel rbuels: well, it's not the best software out there, I must admit
22:07 pyrimidine There is a pass-through option for Build.PL, let me check..
22:07 boegel rbuels: bioinformatics people do crazy things
22:07 boegel rbuels: like use perl :P
22:08 pyrimidine we know.  We are bioinformatics people ;)
22:08 pyrimidine who use perl, and JS, and maybe some Ruby, and various other things
22:08 boegel :)
22:08 boegel js?
22:08 pyrimidine javascript
22:08 boegel for compute tasks?
22:08 boegel you must be kidding...
22:09 pyrimidine mainly for display in browsers
22:09 boegel I think Haskell would be a great match for bioinformatics
22:09 boegel although laziness can be painful if you don't know what you're doing
22:10 pyrimidine Well, Perl 6 will have laziness built in as well (which was lifted form Haskell, BTW)
22:10 boegel what's happening behind the screens when "CPAN.pm: Going to build C/CJ/CJFIELDS/BioPerl-1.6.1.tar.gz" is printed?
22:10 boegel oh, nice
22:11 boegel be careful with it
22:11 boegel it can eat memory
22:11 boegel but it can also allow very cool stuff like work with lazy lists
22:11 pyrimidine yep.  my @arr = 1..Inf;  # perl 6
22:12 pyrimidine you can call @arr[0..2] without running out of memory
22:12 boegel same goes for Haskell
22:13 boegel in Haskell, you can map a function over a lazy list first, and then fetch the first 5 results for example
22:13 boegel and it's useful :)
22:14 CIA-44 Bio-FeatureIO: Robert Buels master * rfcc517f / (lib/Bio/FeatureIO/gff.pm t/gff3.t): tweak phase parsing back to making -phase a first-class attribute for all feature objects, and update tests - http://bit.ly/eEHmCq
22:14 pyrimidine huh, can't find the Build.PL passthrough options.  Will have to check into that.
22:15 boegel anyone whowhat's happening behind the screens when "CPAN.pm: Going to build C/CJ/CJFIELDS/BioPerl-1.6.1.tar.gz" is printed? knows this?
22:16 boegel seems to be stuck (in the automated installer)
22:16 boegel but works fine if I do it manually with interaction
22:16 * boegel grunts
22:16 boegel damn you perl
22:16 * boegel waves his fist
22:18 pyrimidine IIRC, running the install from CPAN shell that's a spot where it takes some time copying files over to the build library (blib) as well as sets up the rest of the build environment
22:19 boegel pyrimidine: I'm seeing no CPU activity for 10 minutes
22:19 pyrimidine Not sure why the Build step takes that long, though
22:19 boegel lsof isn't showing any open files or some such either
22:19 pyrimidine maybe hit return to see if it's hanging.  I know GBrowse (which requires bioperl) does this sometimes
22:19 boegel seems like under the automated installer, it never gets to "Install [a]ll optional external modules, [n]one, or choose [i]nteractively? [n]"
22:20 boegel hit return?
22:20 boegel in an automated installer? ^_^
22:20 boegel and if I hit return when it's not needed, I'll answer the next question I get with the default answer
22:20 boegel which I don't want
22:20 boegel UGH
22:20 rbuels boegel: if you are doing this in a shell script, try running your ./Build step with < /dev/null
22:20 pyrimidine Like I said, at least with GBrowse there is a step that hangs for some unknown reason.
22:21 rbuels boegel: that will make it take defaults for the questions, since it doesn't have an stdin.
22:21 * rbuels wonders how often he needs to say this
22:22 boegel rbuels: right
22:22 boegel rbuels: well, the automated installer is written in Python
22:22 boegel rbuels: so I'm not sure if using /dev/null is an option
22:22 rbuels boegel: ok then, fork and close stdin.
22:23 rbuels boegel: or close the stdin to the process, however you are running Build.
22:23 * pyrimidine wonders what installer written in Python is trying to install perl modules
22:23 pyrimidine next thing you know, dogs and cats will get along.  It'll be anarchy!
22:23 boegel pyrimidine: home-brewn installer, don't ask :P
22:23 boegel anyway
22:23 boegel I have to run
22:23 pyrimidine good luck!
22:25 boegel thx
22:25 boegel I may be back if things don't work out :P
22:25 boegel ttyl
22:26 pyrimidine ok
22:26 pyrimidine :)
22:28 boegel left #bioperl
22:33 deafferret y'all are saints.
22:36 pyrimidine heh, if you only knew :)
22:38 * pyrimidine => home
22:39 pyrimidine before I go, rbuels: I'll probably work on cleaning up FeatureIO a bit more.  I need it for some work I'm doing locally
22:40 rbuels pyrimidine: sounds good to me
23:55 dnewkirk left #bioperl

| Channels | #bioperl index | Today | | Search | Google Search | Plain-Text | summary