lispの問題ではないのかもしれませんが、
;; elisp
(* 1.4 1.4)
1.9599999999999997
;; gauche
gosh> (* 1.4 1.4)
1.9599999999999997

という結果になるのは何でですか?
guileだと
% guile -c "(display (* 1.4 1.4)) (newline)"
1.96
なんですが。