2015-12-22 19 views
6

Learn You a Haskellは、5 /= 5を含んでいます。私はこのことがどういう意味か分かりません。最初の式は5/5 = 5を意味しますか?しかし、それはTrueであってはなりません。ハスケルの/ =演算子はどういう意味ですか?

+2

逆: '==' :) – Rizier123

+3

次回の使用:https://www.haskell.org/hoogle/ – Rizier123

+0

@ Rizier123これは私に '(/ =):: a - > a - > Boolを与えるインフィニクス4'は初心者としてはあまり役に立ちません.... – mhutter

答えて

12

これは等しくないことを意味します。従って5 /= 5であり、偽として5 == 5真のです。示唆され、それは数学記号をリコール "≠"(/ =)反対に、 "="(==)として

x /= y = not (x == y)

+0

これは、等号符号付きであり、すなわち等しくない。 – doron

4

これは「等しくない」演算子です。

様々な言語は、たとえば!=に使用<>、等...とHaskellは/=を使用しています。:tを使用)

はあなたのタイプ伝えることができます:

> :t (/=) 
(/=) :: Eq a => a -> a -> Bool 
+2

ちなみに、['Data.Monoid'](http://hackage.haskell.org/package/base-4.8.1.0/docs/Data-Monoid.html)モジュールは' <> '演算子もエクスポートしますが、 '等しくない'を意味するが、 'mappend'の同義語である。 – Jubobs

+0

私が見ることができるタイプを見ると、それは全く違うことをしています: '(<>):: Monoid m => m - > m - > m' – vikingsteve

+0

ここでスーパー・ノービー:読む方法 '' t''の出力'a'は3回; – javadba

12

==演算子は "等しい" という意味します。

/=演算子は、 "ではありません。と等しい"を意味します。

これは、数学的な "≠"記号(すなわち、それに対角線を持つ等号)を思い起こさせるものです。

関連する問題