Use the isTrue# function which is made visible by importing GHC.Base.

isTrue# (x <=# y) :: Bool

You can show an Int# by wrapping it up in an I# data constructor and applying show to it:

x# :: Int#
show (I# x#) ::String

You can make the I# data constructor visible via GHC.Base like above. 

Hope that helps!
Rahul


On Wed, Nov 2, 2016 at 11:20 AM, Richard A. O'Keefe <ok@cs.otago.ac.nz> wrote:
I have x, y :: Int#
I expect that x <=# y :: Bool
but ghc 7.8 says
    Couldn't match expected type ‘Bool’ with actual type ‘Int#’
    In the expression: x <=# y
    In an equation for ‘b’: b = x <=# y

I have MagicHash and I've imported the right modules so that
<=# is recognised as *something*, but at this point I'm baffled.

I'm also not clear on how I can show an Int#.


_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.



--
Rahul Muttineni