したがって、Haskell seq関数は、最初のパラメータの評価を強制し、3番目のパラメータを返します。したがって、それは中置演算子です。式の評価を強制したい場合、直感的にそのような特徴は単項演算子になります。 bを返し、どのようにbの復帰のために構築するか、なぜ必要な値は、aであれば、代わりに seq :: a -> b -> b
のそれは、結果的に seq :: a -> a
だろう。
これは少しばかりではあるかもしれませんが、私はそれをしばらく疑問に思っています。 data Foo = Bar !Int !Float
私はしばしば怠惰は素晴らしいことだと考えている:!と私の知る限りでは、人は必ず値が構築される前にデータコンストラクタのパラメータが評価されていることができます。さて、私がソースを調べると、厳密なフィールドが!のないよりも頻繁に表示されます。 これのメリットは何