Camelia, the Perl 6 bug

IRC log for #bioperl, 2010-06-14

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

All times shown according to UTC.

Time Nick Message
00:30 russellsmithies joined #bioperl
01:19 brandi joined #bioperl
01:19 brandi left #bioperl
05:56 XaeroOne joined #bioperl
06:24 luisrodr joined #bioperl
07:05 vinnana joined #bioperl
07:09 XaeroOne joined #bioperl
07:42 Xaero joined #bioperl
08:46 XaeroOne joined #bioperl
08:52 luisrodr_ joined #bioperl
10:27 brandi joined #bioperl
10:28 brandi left #bioperl
11:14 Xaero joined #bioperl
11:28 brandi joined #bioperl
11:28 brandi left #bioperl
12:48 brandi joined #bioperl
12:48 brandi left #bioperl
13:03 brandi joined #bioperl
13:08 brandi left #bioperl
13:24 JunY Hi, Kai, are you here?
13:25 JunY Or any dude here?
13:26 JunY Ok, I got this question. In the Bio::DB::Fasta, you can creat a
13:27 JunY In the Bio::DB::Fasta, you can create a stream by my $stream  = Bio::DB::Fasta->new('/path/to/f​iles')->get_PrimarySeq_stream;
13:27 JunY Then call $stream->next_seq(), you will get a Bio::PrimarySeq::Fasta object.
13:28 JunY But there is no Bio::PrimarySeq::Fasta package in BioPerl... How can find the information related to Bio::PrimarySeq::Fasta?
13:34 kai JunY: there isn't?
13:34 driley joined #bioperl
13:35 kai right
13:35 kai I assume Bio/Seq/PrimarySeq.pm has the PrimarySeq object
13:35 CIA-94 biome: Chris Fields master * r3f715e5 / (6 files in 4 dirs): some final tweaks; will likely move much of the abstraction work from the last several commits back into their respecitve roles in the cleanup branch - http://bit.ly/aS3tVa
13:36 kai hm, reading isn't my strong point today
13:36 kai but I'm sure Bio/Seq is the place to start looking
13:40 JunY Ok, cheers, I will try
13:46 JunY but i still dont understand why Bio::PrimarySeq::Fasta doest exist .... then how can the object be created?
13:56 CIA-94 biome: Chris Fields cleanup_seqfeature * rc9599d3 / (4 files in 3 dirs): correct oops on is_remote impl. on Segments - http://bit.ly/cOZYBv
13:56 CIA-94 biome: Chris Fields cleanup_seqfeature * r3f715e5 / (6 files in 4 dirs): some final tweaks; will likely move much of the abstraction work from the last several commits back into their respecitve roles in the cleanup branch - http://bit.ly/aS3tVa
13:56 CIA-94 biome: Chris Fields cleanup_seqfeature * rdd9241d / (10 files in 6 dirs): Merge branch 'master' into cleanup_seqfeature - http://bit.ly/cPlDJe
14:03 faceface rbuels:
14:04 faceface not at work?
14:04 faceface ;-)
14:04 faceface I'd like to ask you about the potato BES that you loaded into SGN...
15:32 deafferret ..o.
15:32 deafferret JunY: did you figure it out?
15:40 deafferret I'm back on the "I guess BioPerl SeqFeature needs a clone() method" warpath unless someone stops me.
16:01 JunY No ...
16:02 JunY Please continue with the Bio::PrimarySeq::Fasta ... :D
16:08 deafferret package Bio::PrimarySeq::Fasta;   is defined inside   Bio/DB/Fasta.pm
16:09 deafferret as is   package Bio::DB::Fasta::Stream;     I don't know why
16:10 deafferret Bio/DB/Fasta.pm   defining packages that don't start with Bio::DB::Fasta strikes me as bad class design
16:17 JunY yep
16:17 JunY but it seems the package still works...
16:22 pyrimidine joined #bioperl
16:24 JunY Hi, pyrimidine. Just to confirm, we will meet two and half an hour later,right?
16:25 pyrimidine JunY: yes.
16:31 JunY To deafferret, I see. Both of these two packages are defined in Bio::DB::Fasta, a bit odd, but now I've found the code needed. Cheers~~
16:32 deafferret JunY: Perl lets you define packages of any namespace in any file you want. BioPerl could be a single file with thousdands of package definitions. That doesn't make it a good idea or maintainable design.  :)
16:33 deafferret I don't know why the authors put it there. you could poke around in git history or the mailing list archive.
16:33 pyrimidine That was Lincoln's design.
16:34 pyrimidine don't argue with the Stein!
16:34 deafferret indeed. git annotate shows lstein Jun 2001   :)
16:35 pyrimidine You could ask on the list about it.
16:36 pyrimidine (prob cc gmod-gbrowse JIC)
16:36 deafferret pyrimidine: any objection to me adding a clone() to Bio::SeqFeature::Generic ?
16:36 * pyrimidine looking at how clone is implemented in SF::Lite
16:36 deafferret it's a lot easier in Lite.   :)
16:37 deafferret I need to create lots of new objects of same type as old type, etc
16:37 deafferret does Moose have deep cloning built in?
16:37 pyrimidine yes, I think
16:37 deafferret oh, cool. I'll just Moosify SeqFeature then   ;)
16:38 pyrimidine actually I think it comes from Class::MOP
16:38 deafferret done and done!
16:38 pyrimidine that method looks fine, but there is one problem
16:38 pyrimidine how do you clone annotations?
16:39 deafferret beats me.
16:39 pyrimidine or the Location instance?
16:39 deafferret lots of code?
16:39 deafferret assuming those objects don't have clone() methods themselves
16:39 pyrimidine possibly.
16:39 deafferret ick
16:39 pyrimidine they don't
16:39 pyrimidine this is one of the fundamental problems with bioperl
16:40 pyrimidine what is an attribute, what is a method?
16:40 pyrimidine and, so, what do we clone?
16:40 deafferret hmm   t/SeqFeature/SeqFeature.t ......... 1/222 Can't find 'build_params' in _build at /usr/local/lib/perl5/5.10.0/Module/Build/Base.pm line 1206.
16:41 pyrimidine odd.
16:41 deafferret maybe ./Build.PL will solve that
16:42 deafferret yup. someday I'm going to have to deep dive Build.PL
16:43 pyrimidine yes, it's in need of care
16:44 dnewkirk joined #bioperl
16:44 * pyrimidine discovers the benefits of 'git pull --rebase'
16:45 pyrimidine deafferret: I think having a clone() method would be good at the Root level, possibly unimplemented.  Each class would have to define what it means.
16:50 JunY Ok, need to go home now. I may write an email on the mail list asking about the Bio::DB::Fasta. See u guys later.
16:51 pyrimidine JunY: Lincoln just responded to deafferret on-list.  You could probably get a response fairly quickly there.
16:54 pyrimidine deafferret: both of Lincoln's suggestions are in perl core (Storable as of perl 5.7).  I would support use of any of those options, whichever performs best (prob. dclone())
16:57 dnewkirk joined #bioperl
16:59 spekki01 joined #bioperl
17:10 * pyrimidine hates it when someone calls perl6 vaporware
17:22 dnewkirk It has been in dev (in one form or another) for 10+ years. Granted, it's a small team taking on a large overhaul of a pwerful scripting language, but many people feel it should have been out in that timeframe, which isn't entirely unreasonable I suppose..
17:24 pyrimidine how long did C++ take to develop?
17:24 pyrimidine about 10 years
17:26 pyrimidine python 3000 was first mentioned around that same period of time, maybe a few years later
17:27 pyrimidine and that wasn't nearly the language change that perl6 intends on being
17:27 pyrimidine anyway, enough on the grousing :)
17:30 dnewkirk joined #bioperl
17:31 kblin pyrimitroll: bah, 10 years is nothing
17:31 kblin wine 1.0 took longer
17:32 pyrimidine well, we'll see how rakudo * is accepted fairly soon
17:47 spekki0 joined #bioperl
17:56 deafferret pyrimidine: You suggesting I add a clone() method via dclone() to Root?
18:08 pyrimidine deafferret: possibly
18:09 deafferret pyrimidine: k. attempting in topic/jhannah-seqfeature-clone
18:09 pyrimidine I wish it had the semantics more like Class::MOP's clone(), but it's a start
18:09 * deafferret looking
18:10 pyrimidine http://search.cpan.org/~flora/Class-​MOP-1.03/lib/Class/MOP/Class.pm#Obje​ct_instance_construction_and_cloning
18:11 pyrimidine the difference is, you pass in the parameters that need to be modified in the cloned instance
18:11 deafferret that's pretty slick
18:12 deafferret should be easy? attempting
18:12 deafferret I just dclone, then set the %args, right?  :)
18:12 pyrimidine yes
18:12 pyrimidine you could emulate that
18:12 deafferret what could possibly go wrong?
18:12 deafferret :)
18:12 pyrimidine :)
18:13 deafferret auto-piloting the generation of complex object trees should be completely trvial   ;)
18:13 pyrimidine having a default way of doing it would be nice, and makes implementing it elsewhere a bit easier
18:14 * pyrimidine is surprised no one has done it sooner
18:14 deafferret no one else is as naive as I still am   :)
18:18 kblin speaking of perl, is there a good cross-platform way to detect the number of CPUs in a machine?
18:19 deafferret whoah. not that I've heard of. looking
18:20 kblin Sys::CPU, it seems
18:20 kblin it claims to run on win32, I can probably test that :)
18:20 kblin I mostly asked here to trigger the IRC effect that happens when googling :)
18:21 deafferret see also Sys::Info::Device::CPU
18:21 deafferret "SEE ALSO Sys::Info, Sys::Info::OS, Sys::Info::Device"  ?
18:24 deafferret Can't store CODE items at Bio/Root/Root.pm line 247.
18:25 deafferret _root_cleanup_methods' => ARRAY(0xc5f290)    0  CODE(0xbf7c20)
18:26 pyrimidine coderefs
18:26 pyrimidine called for cleanup
18:26 deafferret indeed   :)
18:26 deafferret Bio::Species punts....    delete $self->{tree}->{_root_cleanup_methods};
18:26 deafferret :)
18:26 pyrimidine Bio::Species is a hack
18:27 pyrimidine pardon my bluntness, but it is
18:28 deafferret sounds like a compliment to me   :)
18:36 perl_splut joined #bioperl
18:46 dnewkirk joined #bioperl
18:49 dnewkirk joined #bioperl
19:13 JunY Hi, pyrimidine, are you there?
19:24 pyrimidine JunY: yes, got pulled away for an emergency meeting, have time to talk?
19:25 JunY yep
19:25 JunY I am on the skype
19:57 deafferret :)
19:57 deafferret git++ # defeating crappy wireless for 8 years
19:57 deafferret DVCS++ # equity
20:04 deafferret oh, by the way: here's 3 lifetimes worth of work for you to do in your free time
20:19 deafferret hmm... how do I push my new branch?
20:22 CIA-94 bioperl-live: Jay Hannah topic/jhannah-seqfeature-clone * rc5cba4c / (Bio/Root/Root.pm t/SeqFeature/Clone.t):
20:22 CIA-94 bioperl-live: Added Bio::Root::Root clone() (which uses Storable dclone()) so
20:22 CIA-94 bioperl-live: I can clone Bio::SeqFeature::Generic objects. Or anything else,
20:22 CIA-94 bioperl-live: for that matter(?). t/SeqFeature/Clone.t seems happy so far. - http://bit.ly/cAEGR1
20:23 deafferret ooo   git push origin topic/jhannah-seqfeature-clone:refs/​heads/topic/jhannah-seqfeature-clone
20:31 CIA-94 bioperl-live: Warren Kretzschmar master * r8105a05 / Bio/SeqIO/msout.pm :
20:31 CIA-94 bioperl-live: Bio/SeqIO/msout.pm 1.1.3
20:31 CIA-94 bioperl-live:  Made some changes to the POD file - http://bit.ly/alr2ZY
20:31 dnewkirk joined #bioperl
20:33 pyrimidine deafferret: doesn't 'git push' from the branch just work?
20:33 deafferret Everything up-to-date
20:35 deafferret git version 1.7.1     maybe I did something wrong
20:35 CIA-94 bioperl-live: Warren Kretzschmar topic/cjfields-foobar * r8105a05 / Bio/SeqIO/msout.pm :
20:35 CIA-94 bioperl-live: Bio/SeqIO/msout.pm 1.1.3
20:35 CIA-94 bioperl-live:  Made some changes to the POD file - http://bit.ly/alr2ZY
20:36 dave_messina joined #bioperl
20:36 pyrimidine git push origin topic/cjfields-foobar
20:36 pyrimidine (from the branch you are on, of course)
20:37 deafferret -ponder-   I tried 'git push' and it ignored me, so I googled and found that super-long thingy
20:39 pyrimidine one of these days I'll grok all of the ways specrefs are represented in git
20:40 dnewkirk joined #bioperl
20:45 dnewkirk joined #bioperl
20:56 dnewkirk joined #bioperl
21:02 CIA-94 bioperl-live: Naama Menda master * rf7ad7aa / Bio/OntologyIO/obo.pm :
21:02 CIA-94 bioperl-live: added 'xref' identifier recognition for obo files. xref fields are stored as secondary_ids
21:02 CIA-94 bioperl-live: Signed-off-by: Chris Fields <cjfields@bioperl.org> - http://bit.ly/ajQecg
21:04 dave_messina deafferret: hey, nice addition with clone().
21:08 pyrimidine we can probably tweak that somewhat, use a specific clone implementation if available; Clone.pm vs Storable::dclone(), for instance
21:08 pyrimidine Clone.pm is supposed to be faster, and if B::Deparse is present can deal with coderefs
21:09 dave_messina ah OK, thanks for the explanation. Way to anticipate my question. :)
21:21 deafferret dave_messina: oh?   *blush*
21:22 dave_messina deafferret: mos' definitely!
21:22 dave_messina deafferret: by the way, what are you using it for?
21:22 deafferret feel free to optimize my branch. now testing to make sure I didn't break anything unexpected
21:22 deafferret been distracted all day
21:22 deafferret surprise, surprise
21:23 dave_messina you just added new code, so I wouldn't expect anything to break at this point.
21:23 dave_messina you DID run the test suite, didn't you? :)
21:23 deafferret well  'sub clone' is popular already, so I'm afraid I might have stomped one of em
21:23 deafferret dave_messina: run the what now?  ;)
21:23 dave_messina heh heh
21:23 deafferret i only ran the obvious, need to regress now
21:24 deafferret now that it's committed I feel less nauseous switching tags back and forth
21:24 dave_messina yeah, that's tricky. I'm not used to git yet, so I have to follow the recipe each time still.
21:25 pyrimidine could always rename the method clone_object() if there are naming clashes
21:26 pyrimidine left #bioperl
21:27 * deafferret falls to his knees in the rain and screams "WHY!!?!?!" skyward
21:42 * deafferret falls to his knees in the rain and screams "WHY!!?!?!" skyward
21:59 * dnewkirk stares at the ball of goo that composes the script to be fixed and whimpers
23:45 * deafferret falls to his knees in the rain and screams "WHY!!?!?!" skyward

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