>>599 Gauche でやってみたよ
(use srfi-42)
(define (pair seq)
(let1 counter 0
(do-ec (: xs seq) (: ys (cdr (member xs seq)))
(begin
(format #t "(~s ~s)~%" xs ys)
(inc! counter)))
(format #t "~d~%" counter)))

gosh> (pair '(a b c d))
(a b)
(a c)
(a d)
(b c)
(b d)
(c d)
6

>>600 スレちがいゴメン