While reading some Core code, I noticed a function whose return type was (# State# RealWorld #). I was curious why unboxed tuples of arity 1 would exist, so I dug around in the GHC sources and found that they are used when desugaring foreign calls, as per the comment at the beginning of boxResult in deSugar/DsCCall.lhs. But I still don't understand -- what's the difference between (# foo #) and foo?
Just curious. Thanks, Tim -- Tim Chevalier * http://cs.pdx.edu/~tjc * Often in error, never in doubt "Love is an exploding cigar which we willingly smoke."--Lynda Barry _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
