简体   繁体   中英

Why isn't 〉allowed as a Haskell infix operator?

Why isn't 〉 allowed as an infix operator in Haskell?

GHCi, version 8.0.2: http://www.haskell.org/ghc/  :? for help
Prelude> :{
 infixr 6 〉
 (〉) :: Int -> (Int -> (Int))
 a 〉 b = a + 2*b
:}
print (1 〉 2)

According to this Haskell Report any Unicode symbol or punctuation and this question it should work.

It's probably a bug. It doesn't seem to allow any characters marked as ClosePunctuation or OpenPunctuation by generalCategory . I suggest you open a ticket on the GHC Trac and see what they think.

https://ghc.haskell.org/trac/ghc/ticket/2687 looks related and suggests that at least at some point OpenPunctuation and ClosePunctuation were considered graphic rather than symbol.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM