currying
curryingは、文脈によって全く異なる三つの意味を持つ言葉です。日常会話では料理に関する話題で使われますが、馬の世話という専門的な文脈や、コンピューターサイエンスという高度に技術的な文脈でも使用されます。それぞれの分野で使われる道具や概念が異なるため、状況に応じた判断が必要です。
料理と馬の手入れにおける違い
料理の文脈では、カレー粉やソースを用いて料理を準備することを指します。一方で、馬の世話におけるcurryingは、カレーコームと呼ばれる特殊なブラシを使って馬の皮膚から汚れや抜け毛を取り除く毛づくろいのことを指します。どちらも同じ綴りですが、前者は食文化、後者は動物管理という全く別の領域の活動です。
コンピューターサイエンスにおける概念
プログラミングの文脈におけるカリー化は、数学的な関数操作を指します。具体的には、複数の引数を一度に受け取る関数を、一つの引数を受け取って次の引数を待つ関数を返す形式に変換することです。これにより、特定の引数をあらかじめ固定した新しい関数を効率的に作成できるため、関数型プログラミングにおいて非常に重要な手法となります。
意味
カレー粉やカレーソースを使って料理を準備すること
She spent the afternoon currying the chicken for the dinner party.
彼女はディナーパーティーに向けて、午後の時間を鶏肉のカレー調理に費やした。
カレーコームを使って馬を掃除し、手入れすること
The stable hand is currently currying the mare before the race.
厩務員は現在、レースの前に牝馬の毛づくろいをしている。
コンピューターサイエンスにおいて、複数の引数を取る関数を、それぞれが単一の引数を取る一連の関数に変換する手法
Currying allows a programmer to create specialized versions of a general function by fixing some of its arguments.
カリー化により、プログラマーは一部の引数を固定することで、汎用的な関数の特化バージョンを作成できる。