simseq-0.0: src/Simseq.hs
{-
Main function for simseq
Read a set of sequences, apply an error model to generate simulated
sequences.
Usage: simseq [options] fasta-file..
See Options.hs for option details.
-}
module Main where
import Bio.Sequence
import System.IO
import Data.ByteString.Lazy.Char8 (pack)
import UnfoldMut
import Options
main :: IO ()
main = do
(Opts pri mut trm,ss) <- getOpts
ms <- pri ss
let ts = mkseqs $ map (transcribe mut trm) ms
hWriteFasta stdout ts
mkseqs :: [String] -> [Sequence]
mkseqs = map ($Nothing) . zipWith Seq [pack (">tr_"++show x) | x <- ([1..]::[Int])] . map pack