>>189
なんで別々にするのが嫌なのか分からんが、HXTのドキュメントを見た感じでは
listA :: (ArrowList a) => a b c -> a b [c]
を使えばよさそう。