(lambda (x) (let tr ((x x)) (if (null? (car x)) '()
   (cons (map car x) (tr (map cdr x))))))

; tests

(let* ((tr (fileVal "transpose"))
    (te (lambda (a b) (cons (equal? a (tr b)) (equal? b (tr a)))))) (list
 (te '((3)) '((3)))
 (te '((2 4)) '((2)(4)))
 (te '((2 4) (3 5) (5 2)) '((2 3 5) (4 5 2)))))
; => ((#t . #t) (#t . #t) (#t . #t))