Haskell で匿名関数を表現するのに \ を使うのはバックスラッシュがラムダ文字 λ に似てるかららしい。でもこれは Windows とかだと円記号になってしまって台無しである。それにバックスラッシュは相当多くの言語で一意にエスケープの意味を持つので混乱する。

匿名関数をラムダ lambda と呼ぶのは Lisp の影響だが、Peter Norvig の Paradigms of Artificial Intelligence Programming によると Lisp で匿名関数を lambda と書くのは以下のような由来らしい。

- Russel と Whitehead の Principia Mathematica では のように束縛変数の上にキャレットを置く書き方をしていた

- Church がその記法を ^x(x+x) と変えた

- キャレットの下に何も無いのが変だと思ったので形が似ている Λx(x+x) と変えた（大文字ラムダ）

- やっぱり Λ は他の記号と見間違えやすいので小文字にして λx(x+x) とした

- McCarthy が Lisp を作ったときにそのラムダ表記を借りて lambda とした

Haskell も Church の最初の記法にさかのぼればよかったのになあと思った。