私はPythonから来ており、私がHaskellを学ぶのはかなり難しいです。例えば、私はリストをマージするこの関数を持っています。最初にリストをマージしてから、マージされたリストの合計を返します。正しい構文はどうですか?このHaskellリスト関数で複数のアクションを実行するには?
merge:: [[a]] -> [a]
merge xss = foldr (++) [] xss
return sum []
このコードは、最後の行を削除した場合にのみ機能します。しかし、私はマージされたリストの合計を返したい。
2つの別々の関数から構築することができます。最初のものは実際にマージを行い、もう1つは合計を取ります。しかし、これらを組み合わせること( "合成")は機能的な方法で行うべきです:数学関数として 'f(g(x))'、またはHaskellで 'f g x'です。また、和の型は '[a]'ではなく 'a'であり、' return'はあなたがHaskellで何を意味すると考えるのかを意味しないことに注意してください。 –
また、 'return'はハスケルのものではありません。 – karakfa
['return'](http://stackoverflow.com/questions/15323927/whats-so-special-about-return-keyword)はあなたの考えを意味しません – jkeuhlen