Я понимаю, что такое каррирование, и знаю, как его использовать. Это не мои вопросы, мне просто любопытно, как это на самом деле реализовано на каком-то более низком уровне, чем, скажем, код Haskell.
Например, при каррировании (+) 2 4
сохраняется ли указатель на 2
до тех пор, пока не будет передано 4
? Изгибает ли Гэндальф пространство-время? Что это за магия?