small problem with ghc(i) on Windows

Wolfgang Thaller wolfgang.thaller@gmx.net
Mon, 16 Dec 2002 13:47:37 +0100


Jerzy Karczmarczuk wrote:

> Apparently the form (#) is considered illegal. It works on my Linux.
>
> On Win2000: parse error on input ')'

(#) is legal Haskell 98, but it is illegal in GHC when -fglasgow-exts 
is on. It should have nothing to do with the platform.

Thre reason is that GHC uses the syntax (# a, b #) for unboxed tuples. 
When GHC's language extensions are enabled, GHC parses '(#)' as '(#' 
and ')', which doesn't make sense.

Solutions:
1) switch off the language extensions
2) use spaces around the hash: write ( # ) instead.

Cheers,

Wolfgang Thaller