panic! the impossible happened
Got the following in ghch
- Calc> :l Calc
[1 of 1] Compiling Calc ( Calc.hs, interpreted ) ghc.exe: panic! (the 'impossible' happened)
(GHC version 7.4.2 for i386-unknown-mingw32):
nameModule show{tv a17H}
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
compiling the following code
module Calc where
--Type for my calculation list data CalcExp =
Operator Op |
Number Integer
deriving (show)
-- Number type --data Number = Number Integer
-- Operator type data Op =
Mlt | Dvd | Add | Sbt
-- Operator function operate :: CalcExp -> CalcExp -> CalcExp -> Integer operate (Operator Mlt) (Number a) (Number b) = a * b operate (Operator Dvd) (Number a) (Number b) = div a b operate (Operator Add) (Number a) (Number b) = a + b operate (Operator Sbt) (Number a) (Number b) = a - b
-- Do calcultation --calc :: [CalcExp] -> [CalcExp] -> Integer
-- Resulve calc rCalc :: [CalcExp] -> Integer rCalc (exps) = rCalc' exps [] where
rCalc' :: [CalcExp] -> [CalcExp] -> Integer rCalc' ((Operator op):exps) ((Number nA):(Number nB):[]) = operate (Operator op) (Number nA) (Number nB) rCalc' ((Operator op):exps) ((Number nA):(Number nB):stack) = rCalc' exps ((Number (operate (Operator op) (Number nA) (Number nB))):stack) rCalc' ((Number n):exps) (stack) = rCalc' exps ((Number n):stack) rCalc' (a) (b) = error "Calculation failed"
Trac metadata
Trac field | Value |
---|---|
Version | 7.4.2 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | GHCi |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |