initial public release
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
module BC.Types where
|
||||
|
||||
data Value = BInt Integer
|
||||
| BFloat Double
|
||||
| BOp String
|
||||
| BErr String
|
||||
instance Show Value where
|
||||
show (BInt i) = show i
|
||||
show (BFloat f) = show f
|
||||
show (BOp o) = o
|
||||
show (BErr e) = "error: " ++ e
|
||||
|
||||
@@ -13,9 +15,10 @@ isErr (BErr _) = True
|
||||
isErr _ = False
|
||||
|
||||
precedence :: Value -> Int
|
||||
precedence (BOp "^") = 1
|
||||
precedence (BOp "^") = 3
|
||||
precedence (BOp "*") = 2
|
||||
precedence (BOp "/") = 2
|
||||
precedence (BOp "-") = 1
|
||||
precedence (BOp "+") = 1
|
||||
precedence (BOp "%") = 2
|
||||
precedence _ = 0
|
||||
|
Reference in New Issue
Block a user