<div dir="ltr"><div>I think it is a nice feature if used sparingly.</div><div><br></div><div>Note that while Unicode symbols are a normal part of the Haskell language you can also turn on some Unicode syntax using the UnicodeSyntax [1] language extension. This means the following will be accepted by GHC:</div>

<div><br></div>(∈) ∷ ∀ α. Eq α ⇒ α → [α] → Bool<br>(∈) = elem<div><br></div><div>You might want to take a look at some packages I created that define some Unicode symbols for common operators and values [2, 3, 4].</div><div>

<br></div><div>Opinions on whether this is a good idea vary. My anecdotal observation is that it seems to be used more by people who speak a native language that is already poorly served by ASCII. Perhaps because they are already used to not being able to simply type every character they need. </div>

<div><br><div>1 - <a href="http://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html#unicode-syntax">http://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html#unicode-syntax</a></div><div>
2 - <a href="http://www.haskell.org/haskellwiki/Unicode-symbols">http://www.haskell.org/haskellwiki/Unicode-symbols</a><br>
</div></div><div>3 - <a href="http://hackage.haskell.org/package/base-unicode-symbols">http://hackage.haskell.org/package/base-unicode-symbols</a></div><div>4 - <a href="http://hackage.haskell.org/package/containers-unicode-symbols">http://hackage.haskell.org/package/containers-unicode-symbols</a></div>

</div>