Sha256: c92a56683a1a4d7b300f3b9735635bab9be26095c7fb67c2bb58b944b9a977f4
Contents?: true
Size: 577 Bytes
Versions: 396
Compression:
Stored size: 577 Bytes
Contents
(define-module (nucleotide-count) #:export (nucleotide-counts dna-count)) (define validate-nucleotide (lambda (nucleotide) (if (not (string-any nucleotide "ACGT")) (error "Invalid nucleotide")))) (define dna-count (lambda (nucleotide strand) (validate-nucleotide nucleotide) (string-count strand nucleotide))) (define nucleotide-counts (lambda (strand) (let* ((counts '((#\A . 0) (#\C . 0) (#\G . 0) (#\T . 0))) (bases '(#\A #\C #\G #\T))) (map (lambda (c) (assoc-set! counts c (dna-count c strand))) bases) counts)))
Version data entries
396 entries across 396 versions & 1 rubygems