From 7eb3d5ac4f56ff59957bbabcf75f7203b9c9f00d Mon Sep 17 00:00:00 2001 From: Ramakrishnan Muthukrishnan Date: Sun, 21 Dec 2014 16:20:48 +0530 Subject: [PATCH] hw5: downloaded stuff --- hw5/05-type-classes.pdf | Bin 0 -> 171623 bytes hw5/ExprT.hs | 6 +++ hw5/Parser.hs | 105 ++++++++++++++++++++++++++++++++++++++++ hw5/StackVM.hs | 58 ++++++++++++++++++++++ 4 files changed, 169 insertions(+) create mode 100644 hw5/05-type-classes.pdf create mode 100644 hw5/ExprT.hs create mode 100644 hw5/Parser.hs create mode 100644 hw5/StackVM.hs diff --git a/hw5/05-type-classes.pdf b/hw5/05-type-classes.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d68610ae6ceda030ee6fb192734e608773d29409 GIT binary patch literal 171623 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

mk2cZ22Lb5QUZBPi=vHR(faoiWwRDw32>g_s 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 literal 0 HcmV?d00001 diff --git a/hw5/ExprT.hs b/hw5/ExprT.hs new file mode 100644 index 0000000..3408634 --- /dev/null +++ b/hw5/ExprT.hs @@ -0,0 +1,6 @@ +module ExprT where + +data ExprT = Lit Integer + | Add ExprT ExprT + | Mul ExprT ExprT + deriving (Show, Eq) diff --git a/hw5/Parser.hs b/hw5/Parser.hs new file mode 100644 index 0000000..d6e043d --- /dev/null +++ b/hw5/Parser.hs @@ -0,0 +1,105 @@ +-- Applicative parser for infix arithmetic expressions without any +-- dependency on hackage. Builds an explicit representation of the +-- syntax tree to fold over using client-supplied semantics. +module Parser (parseExp) where +import Control.Applicative hiding (Const) +import Control.Arrow +import Data.Char +import Data.Monoid +import Data.List (foldl') + +-- Building block of a computation with some state of type @s@ +-- threaded through it, possibly resulting in a value of type @r@ +-- along with some updated state. +newtype State s r = State (s -> Maybe (r, s)) + +-- Expressions +data Expr = Const Integer + | Add Expr Expr + | Mul Expr Expr + deriving Show + +instance Functor (State s) where + fmap f (State g) = State $ fmap (first f) . g + +instance Applicative (State s) where + pure x = State $ \s -> Just (x, s) + State f <*> State g = State $ \s -> + case f s of + Nothing -> Nothing + Just (r, s') -> fmap (first r) . g $ s' + +instance Alternative (State s) where + empty = State $ const Nothing + State f <|> State g = State $ \s -> maybe (g s) Just (f s) + +-- A parser threads some 'String' state through a computation that +-- produces some value of type @a@. +type Parser a = State String a + +-- Parse one numerical digit. +digit :: Parser Integer +digit = State $ parseDigit + where parseDigit [] = Nothing + parseDigit s@(c:cs) + | isDigit c = Just (fromIntegral $ digitToInt c, cs) + | otherwise = Nothing + +-- Parse an integer. The integer may be prefixed with a negative sign. +num :: Parser Integer +num = maybe id (const negate) <$> optional (char '-') <*> (toInteger <$> some digit) + where toInteger = foldl' ((+) . (* 10)) 0 + +-- Parse a single white space character. +space :: Parser () +space = State $ parseSpace + where parseSpace [] = Nothing + parseSpace s@(c:cs) + | isSpace c = Just ((), cs) + | otherwise = Nothing + +-- Consume zero or more white space characters. +eatSpace :: Parser () +eatSpace = const () <$> many space + +-- Parse a specific character. +char :: Char -> Parser Char +char c = State parseChar + where parseChar [] = Nothing + parseChar (x:xs) | x == c = Just (c, xs) + | otherwise = Nothing + +-- Parse one of our two supported operator symbols. +op :: Parser (Expr -> Expr -> Expr) +op = const Add <$> (char '+') <|> const Mul <$> (char '*') + +-- Succeed only if the end of the input has been reached. +eof :: Parser () +eof = State parseEof + where parseEof [] = Just ((),[]) + parseEof _ = Nothing + +-- Parse an infix arithmetic expression consisting of integers, plus +-- signs, multiplication signs, and parentheses. +parseExpr :: Parser Expr +parseExpr = eatSpace *> + ((buildOp <$> nonOp <*> (eatSpace *> op) <*> parseExpr) <|> nonOp) + where buildOp x op y = x `op` y + nonOp = char '(' *> parseExpr <* char ')' <|> Const <$> num + +-- Run a parser over a 'String' returning the parsed value and the +-- remaining 'String' data. +execParser :: Parser a -> String -> Maybe (a, String) +execParser (State f) = f + +-- Run a parser over a 'String' returning the parsed value. +evalParser :: Parser a -> String -> Maybe a +evalParser = (fmap fst .) . execParser + +-- Parse an arithmetic expression using the supplied semantics for +-- integral constants, addition, and multiplication. +parseExp :: (Integer -> a) -> (a -> a -> a) -> (a -> a -> a) -> String -> Maybe a +parseExp con add mul = (convert <$>) . evalParser (parseExpr <* eof) + where convert (Const x) = con x + convert (Add x y) = add (convert x) (convert y) + convert (Mul x y) = mul (convert x) (convert y) diff --git a/hw5/StackVM.hs b/hw5/StackVM.hs new file mode 100644 index 0000000..5b2591a --- /dev/null +++ b/hw5/StackVM.hs @@ -0,0 +1,58 @@ +module StackVM (StackVal(..), StackExp(..), Stack, Program, stackVM) where + +-- Values that may appear in the stack. Such a value will also be +-- returned by the stackVM program execution function. +data StackVal = IVal Integer | BVal Bool | Void deriving Show + +-- The various expressions our VM understands. +data StackExp = PushI Integer + | PushB Bool + | Add + | Mul + | And + | Or + deriving Show + +type Stack = [StackVal] +type Program = [StackExp] + +-- Execute the given program. Returns either an error message or the +-- value on top of the stack after execution. +stackVM :: Program -> Either String StackVal +stackVM = execute [] + +errType :: String -> Either String a +errType op = Left $ "Encountered '" ++ op ++ "' opcode with ill-typed stack." + +errUnderflow :: String -> Either String a +errUnderflow op = Left $ "Stack underflow with '" ++ op ++ "' opcode." + +-- Execute a program against a given stack. +execute :: Stack -> Program -> Either String StackVal +execute [] [] = Right Void +execute (s:_) [] = Right s + +execute s (PushI x : xs) = execute (IVal x : s) xs +execute s (PushB x : xs) = execute (BVal x : s) xs + +execute (IVal s1 : IVal s2 : ss) (Add : xs) = execute (s':ss) xs + where s' = IVal (s1 + s2) +execute (_:_:_) (Add:_) = errType "Add" +execute _ (Add:_) = errUnderflow "Add" + +execute (IVal s1:IVal s2:ss) (Mul : xs) = execute (s':ss) xs + where s' = IVal (s1 * s2) +execute (_:_:_) (Mul:_) = errType "Mul" +execute _ (Mul:_) = errUnderflow "Mul" + +execute (BVal s1:BVal s2:ss) (And : xs) = execute (s':ss) xs + where s' = BVal (s1 && s2) +execute (_:_:_) (And:_) = errType "And" +execute _ (And:_) = errUnderflow "And" + +execute (BVal s1 : BVal s2 : ss) (Or : xs) = execute (s':ss) xs + where s' = BVal (s1 || s2) +execute (_:_:_) (Or:_) = errType "Or" +execute _ (Or:_) = errUnderflow "Or" + +test = stackVM [PushI 3, PushI 5, Add] -- 2.37.2