OK, I changed the line code as suggested. It is successfully compiled.
But it still has one warning:
stdm.lhs:38:10:
    Warning: In the use of `catch'
             (imported from Prelude, but defined in System.IO.Error):
             Deprecated: "Please use the new exceptions variant, Control.Exception.catch"

I don't know the effect but as long as I can use it for my course, I don't mind. Thank you for your help.

On Tue, Sep 4, 2012 at 1:46 PM, Eugene Perederey <eugene.perederey@gmail.com> wrote:
What version of ghc are you using?
In recent versions ghc doesn't support pattern matching of expressions
like (n+1).
You can rewrite that factorial function as
 factorial n = n * factorial (n-1)
instead.

best,
Eugene

On 3 September 2012 22:08, Iwan Awaludin <awaludin@gmail.com> wrote:
> Dear Sir/Madam
> I Installed Haskell Platform 2012.2.0.0 for Windows and try to load Stdm.lhs
> which is downloaded from
> http://www.dcs.gla.ac.uk/~jtod/discrete-mathematics/Stdm.lhs
> I have this error:
> stdm.lhs:1160:14: Parse error in pattern: n + 1
> Failed, modules loaded: none.
>
> Is there anything I should do to make it right?
> Thank you.
>
> --
> Iwan Awaludin
>
>
>
>
> _______________________________________________
> Beginners mailing list
> Beginners@haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
>



--
Iwan Awaludin
http://www.schoolofuniverse.com