Sha256: 5afff8b1a271b6ac8b656fc60f48643aff15c32310e9b9ffba5e529a49713757

Contents?: true

Size: 710 Bytes

Versions: 396

Compression:

Stored size: 710 Bytes

Contents

module RNATranscription exposing (toRNA)

import String


toRNA : String -> Result Char String
toRNA dna =
    dna
        |> String.toList
        |> List.map toRNANucleotide
        |> resultExtraCombine
        |> Result.map (List.map String.fromChar)
        |> Result.map (String.join "")



-- Copied from elm-result-extra


resultExtraCombine : List (Result x a) -> Result x (List a)
resultExtraCombine =
    List.foldr (Result.map2 (::)) (Ok [])


toRNANucleotide : Char -> Result Char Char
toRNANucleotide nuc =
    case nuc of
        'C' ->
            Ok 'G'

        'G' ->
            Ok 'C'

        'A' ->
            Ok 'U'

        'T' ->
            Ok 'A'

        _ ->
            Err nuc

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.179 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.178 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.177 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.176 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.175 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.174 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.173 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.172 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.171 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.170 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.169 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.167 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.166 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.165 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.164 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.163 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.162 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.161 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm
trackler-2.2.1.160 tracks/elm/exercises/rna-transcription/RNATranscription.example.elm