Dan Fornika <dforn...@gmail.com> writes: > I've been working on a mitochondrial genetics project, and I'd like to > see a human mitochondrial-specific translation function integrated > into BioHaskell.
Hm, yes, support for the non-canonical translations would be nice. > I see that Bio.Sequence.Phd has a standard translation table, Bio.Sequence.SeqData, actually, but it's reexported in a lot of places. > so I've > made a version called trans_tbl_mito with the appropriate changes > integrated. Currently, there's just a 'translate' that hardwires this table. I concede this is poor design, the table ought to be a parameter, but it was what I needed at the time. > I know that there is a lot of re-factoring going on, and > I'm not sure what is the most efficient/elegant way to introduce this > feature. How about a module Bio.Sequence.Translation containing: import Bio.Core.Sequence data Triple = ... -- e.g. String, or perhaps just SeqData data Amino = ... data TransTable = [(Triple,Amino)] transtable_std, transtbl_mito, ... :: TransTable translate :: TransTable -> SeqData -> SeqData -- and perhaps versions for all frames, or some specific frame? What does everybody think? Dan: would you like to write this? Feel free to rip what you want from the old SeqData module. -k -- If I haven't seen further, it is by standing in the footprints of giants _______________________________________________ Biohaskell mailing list Biohaskell@biohaskell.org http://malde.org/cgi-bin/mailman/listinfo/biohaskell