Guest User

Untitled

a guest
Nov 20th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.65 KB | None | 0 0
  1. data Expr = I Int
  2. | B Bool -- boolean constants
  3. | Add Expr Expr
  4. | Mul Expr Expr
  5. | Eq Expr Expr -- equality test
  6.  
  7. eval :: Expr -> Maybe (Either Int Bool)
  8. -- Your implementation here.
  9.  
  10. data Expr = I Int -- integer constants
  11. | B Bool -- boolean constants
  12. | Add Expr Expr -- add two expressions
  13. | Mul Expr Expr -- multiply two expressions
  14. | Eq Expr Expr -- equality test
  15. deriving (Show)
  16.  
  17. eval :: Expr -> Maybe (Either Int Bool)
  18. eval (I n) = Just $ Left n
  19. eval (B b) = Just $ Right b
  20. eval (Add e1 e2) = ...
  21. eval (Mul e1 e2) = ...
  22. eval (Eq e1 e2) = ...
Add Comment
Please, Sign In to add comment