exercism

Exercism solutions.
Log | Files | Refs

commit 0e32c4b5aa90374ceade01fd1f139d9a55d341e5
parent b8338168a9af1018acec1cabb983abd8f3e1fb0d
Author: dwrz <dwrz@dwrz.net>
Date:   Sun, 20 Jan 2019 19:37:55 +0000

Refactor elisp/anagram/get-char-count

Diffstat:
Melisp/anagram/anagram.el | 17+++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/elisp/anagram/anagram.el b/elisp/anagram/anagram.el @@ -6,15 +6,16 @@ (provide 'anagram) -(defun make-char-count(s) - (let ((char-list (mapcar (lambda (char) (string char)) s)) - (char-counts ())) +(defun get-char-count(w) + "Return an associative list of character counts for W." + (let ((char-list (mapcar (lambda (char) (string char)) w)) + (char-count ())) ;; Build an associative list from the character list. - (dolist (char char-list char-counts) - (if (assoc char char-counts) - (setcdr (assoc char char-counts) - (1+ (cdr (assoc char char-counts)))) - (setq char-counts (cons (cons char 1) char-counts)))))) + (dolist (char char-list char-count) + (if (assoc char char-count) + (setcdr (assoc char char-count) + (1+ (cdr (assoc char char-count)))) + (setq char-count (cons (cons char 1) char-count)))))) (defun compare-char-counts(char-counts comparison-char-counts) (let ((are-equal t))