
You can avoid the error by replacing
eval :: Exp -> (->) Memory Integer
with
eval :: Exp -> Memory -> Integer
which should be the same, but apparently isn't internally in GHC. This is definitely a bug.
Sjoerd
On Oct 28, 2012, at 4:55 AM, José Romildo Malaquias
Hello.
Today I wrote a small program to experiment with the Applicative class. The program is supposed to use an "applicative reader", similar to a "monad reader", to evaluate arithmetic expressions.
But when compiling the program with ghc-7.6.1, I get the following message:
$ ghc --make applicative-eval [1 of 1] Compiling Main ( applicative-eval.hs, applicative-eval.o ) ghc: panic! (the 'impossible' happened) (GHC version 7.6.1 for x86_64-unknown-linux): expectJust cpeBody:collect_args
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
If the line
eval (Let s a b) = \m -> eval b ((s,eval a m):m)
is commented out, the program compiles without problems.
Is this a known issue with the compiler?
The source code is attached.
Romildo
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users