В McBride и Paterson "Аппликационное программирование с эффектами" они вводят прекрасный синтаксический сахар для поднятия чистой функции:
[| f x y z |]
для
f <$> x <*> y <*> z
и я вспоминаю кого-то в другом месте с помощью li f w x y z il
или il f v w x y z li
, и я подумал/надеялся, что это может быть связано с тем, что он может быть определен с использованием некоторой существующей языковой функции и хитрого определения li
и il
.
Я не могу найти никакой ссылки на это за пределами статьи и предполагая, что [|
и |]
вряд ли появятся в ghc в ближайшее время, возможно ли реализовать li
и il
как-то? Я не могу придумать разумный тип для них, поэтому я предполагаю, что мне понадобится шаблон Haskell или аналогичный, но не знаю, достаточно ли для этого. [af| f x y ]
будет хорошо, но я не знаю, возможно ли это до того, как я начну его пытаться, и, конечно, нужна помощь, если это возможно.