ラムダ・クロージャ・部分適用・カリー化を一言でいうと?

すぐに混乱してしまうので、端的にまとめてみました。
勉強しながら少しづつ修正しています。
間違いがありましたら、ご指摘いただけると幸いです。

ラムダとクロージャ

ラムダ(無名関数)

使い捨ての名前のない関数。

クロージャ

関数を返す関数の中で、 変数を束縛(bind/capture)する関数。

※クロージャと関数を返す関数の違い → 変数を束縛するかしないか。

部分適用とカリー化

部分適用

クロージャ等を利用して引数の数の少ない関数を作ること。
(下記Rubyコードのうち、invを導出すること)

カリー化

部分適用の中でも、関数の引数をひとつだけにすること。
複数の引数をとる関数を、引数が「もとの関数の最初の引数」で戻り値が「もとの関数の残りの引数を取り結果を返す関数」であるような関数にすること。
(下記Rubyコードのうち、cdivを導出すること)

参考にさせていただきました。