Add qsort3.
[scheme-dev.git] / adjust-gen100.scm
blob20515d3a1de928a54ec55ed036b4697a783705ce
1 (use-modules (ice-9 rdelim))
4 ;; i generated my first "common" column file with `sort -u'
6 (define common-all
7   (let ((common-file (open-input-file "/tmp/common")))
8     (let q ((line (read-line common-file)) (lines '()))
9       (if (eof-object? line)
10           (reverse lines)
11           (q (read-line common-file) (cons line lines))))))
13 (define 100-list
14   (map (lambda (x) (string-append "/tmp/" x "100"))
15        '("lh" "mm" "md" "mo" "sw" "mc" "kc")))
17 (define (process-1 file-path)
18   (let ((new-file-path (string-append file-path "-after")))
19     (let ((iport (open-input-file file-path))
20           (oport (open-output-file new-file-path)))
21       (let f ((common-rest common-all) (input-line (read-line iport)))
22         (if (null? common-rest)
23             (begin
24               (close-port iport)
25               (close-port oport)
26               (display (string-append "finished: " new-file-path))
27               (newline))
28             (let* ((common-line (car common-rest))
29                    (str-eq? (and
30                              (not (eof-object? input-line))
31                              (string=? common-line input-line))))
32               (write-line (if str-eq?
33                               (string-append common-line ",")
34                               "null,")
35                           oport)
36               (f (cdr common-rest)
37                  (if str-eq?
38                      (read-line iport)
39                      input-line))))))))
41 (map process-1 100-list)