Код Ревью

Сравни свои решения

    (define (transpose m)
  (if (null?  (car m))
      '()
      (cons (map car m) (transpose (map cdr m))))
  )

(define (sum lst)
  (foldr + 0 lst))

(define (dot-product v u)
  (sum (map * v u)))

(define (matrix-*-vector m v)
  (map (lambda (row) (sum (map * row v)))  m))

(define (matrix-*-matrix m1 m2)
  (transpose (map (lambda (col2) (matrix-*-vector  m1 col2)) (transpose m2))))