Я пытаюсь залезть и работать со стрелами, и мне сложно. У меня есть контекст, где мне нужен Arrow [a] [b], и я хочу написать Arrow a b и отобразить/упорядочить его внутри стрелки, a la mapM. В частности, стрелка представляет собой Hakyll Compiler, но я не думаю, что это имеет большое значение для ответа.
Учитывая стрелку
myInnerArrow :: Arrow a => a b c
Как я могу поднять это в стрелку
myOuterArrow :: Arrow a => a [b] [c]
?
Я просмотрел базовую библиотеку, особенно в Data.List и Control.Arrow, но я не могу найти ничего похожего на то, что она выполнит эту работу. Существует ли это под именем, которого я не ожидаю? Предоставляется ли она какой-либо другой библиотекой? Невозможно ли писать по какой-либо причине?