I’m currently working my way through the problems at “rosalind.info,” 
implementing each of my solutions in Perl, Python, and Haskell.  I’m stuck on 
the “GC” problem (http://rosalind.info/problems/gc/) as I need to parse a FASTA 
file with "Bio.Sequence.Fasta.” 

In ghci, I can easily do this:

ghci> let f = readFasta "input.fasta"
ghci> f
[ID -----------------------------------------------------------------
Rosalind_6404

COMMENT ------------------------------------------------------------


DATA ---------------------------------------------------------------
  0 CCTGCGGAAG ATCGGCACTA GAATAGCCAG AACCGTTTCT CTGAGGCTTC CGGCCTTCCC
 60 TCCCACTAAT AATTCTGAGG,ID 
-----------------------------------------------------------------
Rosalind_5959

COMMENT ------------------------------------------------------------


DATA ---------------------------------------------------------------
  0 CCATCGGTAG CGCATCCTTA GTCCAATTAA GTCCCTATCC AGGCGCTCCG CCGAAGGTCT
 60 ATATCCATTT GTCAGCAGAC ACGC,ID ————————————————————————————————
…

So I know it’s working, but I can’t figure out what to do with “f” now.  I can 
see it’s type:

ghci> :t f
f :: IO
       [Bio.Sequence.SeqData.Sequence Bio.Sequence.SeqData.Unknown]

But what do I do with “f” to, say, iterate over the sequences and count G/C 
content, get the length of the sequence, etc.?

Thanks,

Ken

Reply via email to