Commit dbd9624e authored by Kenichi Handa's avatar Kenichi Handa
Browse files

(mapthread): Delete it.

(combinatorial): New function.
(indian--puthash-cv): Use combinatorial instead of mapthread.
parent deb05c92
2009-08-24 Kenichi Handa <handa@m17n.org>
* language/ind-util.el (mapthread): Delete it.
(combinatorial): New function.
(indian--puthash-cv): Use combinatorial instead of mapthread.
2009-08-22 Kevin Ryde <user42@zip.com.au>
* emacs-lisp/checkdoc.el (checkdoc-force-history-flag)
......
......@@ -382,21 +382,12 @@
(;; misc
nil ".m" ".h" "'" nil "." nil)))
(defun mapthread (function seq1 &rest seqrest)
"Apply FUNCTION to each element of SEQ1 and return result list.
If there are several SEQRESTs, FUNCTION is called with that many
arguments, with all possible combinations of these multiple SEQUENCES.
Thus, if SEQ1 contains 3 elements and SEQ2 contains 5 elements, then
FUNCTION will be called 15 times."
(if seqrest
(mapcar
(lambda (x)
(apply
'mapthread
`(lambda (&rest y) (apply ',function x y))
seqrest))
seq1)
(mapcar function seq1)))
(defun combinatorial (head &rest tail)
(if tail
(apply 'append
(mapcar (lambda (y) (mapcar (lambda (x) (cons x y)) head))
(apply 'combinatorial tail)))
(mapcar 'list head)))
(defun indian--puthash-char (char trans-char hashtbls)
(let ((encode-hash (car hashtbls)) ;; char -> trans
......@@ -446,8 +437,8 @@ FUNCTION will be called 15 times."
(if (stringp trans-v) (setq trans-v (list trans-v)))
(indian--puthash-char
(concat c v)
(apply 'append
(mapthread 'concat trans-c trans-v))
(mapcar (lambda (x) (apply 'concat x))
(combinatorial trans-c trans-v))
hashtbls)))
v trans-v))
c trans-c))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment