Sha256: 7e253574b090225458ccbb49ef9ac45e6764b9d81f1c9e68ba494727a4ac7319

Contents?: true

Size: 381 Bytes

Versions: 214

Compression:

Stored size: 381 Bytes

Contents

module Hamming

import Data.Vect

public export
data Nucleotide = A | C | G | T

public export
implementation Eq Nucleotide where
  A == A = True
  C == C = True
  G == G = True
  T == T = True
  _ == _ = False

export
hamming_distance : Eq a => Vect n a -> Vect n a -> Nat
hamming_distance s1 s2 = 
  fst $ filter ((/=) 0) $ map (\(n1,n2) => if n1 == n2 then 0 else 1) $ zip s1 s2

Version data entries

214 entries across 214 versions & 1 rubygems

Version Path
trackler-2.2.1.20 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.19 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.18 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.17 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.16 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.15 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.14 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.13 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.12 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.11 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.10 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.9 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.8 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.7 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.6 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.5 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.4 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.3 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.2 tracks/idris/exercises/hamming/src/example.idr
trackler-2.2.1.1 tracks/idris/exercises/hamming/src/example.idr