object-applyでgorubyっぽいことをする試み。 (extend srfi-1 util.combinations) (define (matching-symbols key) (define (pack-capture-sizes mat) (fold (lambda (i r) (+ (string-size (mat i)) (* r 32))) 0 (iota (- (rxmatch-num-matches mat) 1) 1))) (let ([results '()] [matcher (string->regexp (regexp-replace-all #/./ (x->string key) (lambda (m) #`"(.*?),(regexp-quote (m))")))]) (for-each (lambda (mod) (hash-table-fo