末尾呼び出しの最適化

末尾呼び出しの最適化に関して全然理解できてない。
「手続き呼び出しをジャンプに最適化」って言われるけど、Schemeではもともと「手続き呼び出しは継続を伴った引数付きgoto」(Gauche本6ページ)なので、最適化というか当たり前のことをやってるだけのような気がするんだけど。あと、末尾再帰にすると効率が良くなる理由も理解できてない。
僕にとって

Schemeの3大難解概念。