From 456f59f9d65871460c92e8ef32c6936d2177993b Mon Sep 17 00:00:00 2001 From: Ramakrishnan Muthukrishnan Date: Sat, 27 Dec 2014 20:53:26 +0530 Subject: [PATCH] hw11: starting files --- hw11/11-applicative2.pdf | Bin 0 -> 85678 bytes hw11/AParser.hs | 44 +++++++++++++++++++++++++++++++++++++ hw11/SExpr.hs | 46 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 90 insertions(+) create mode 100644 hw11/11-applicative2.pdf create mode 100644 hw11/AParser.hs create mode 100644 hw11/SExpr.hs diff --git a/hw11/11-applicative2.pdf b/hw11/11-applicative2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7bacd5eb00194fb1c7df44ab029de769edfefc6a GIT binary patch literal 85678 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
  • c57(o|)FrOX(;B@1E*tu9uO> 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 literal 0 HcmV?d00001 diff --git a/hw11/AParser.hs b/hw11/AParser.hs new file mode 100644 index 0000000..bb78a5a --- /dev/null +++ b/hw11/AParser.hs @@ -0,0 +1,44 @@ +module AParser (Parser, runParser, satisfy, char, posInt) where + +import Control.Applicative +import Data.Char + +newtype Parser a = Parser { runParser :: String -> Maybe (a, String) } + +satisfy :: (Char -> Bool) -> Parser Char +satisfy p = Parser f + where + f [] = Nothing + f (x:xs) + | p x = Just (x, xs) + | otherwise = Nothing + +char :: Char -> Parser Char +char c = satisfy (== c) + +posInt :: Parser Integer +posInt = Parser f + where + f xs + | null ns = Nothing + | otherwise = Just (read ns, rest) + where (ns, rest) = span isDigit xs + +inParser f = Parser . f . runParser + +first :: (a -> b) -> (a,c) -> (b,c) +first f (x,y) = (f x, y) + +instance Functor Parser where + fmap = inParser . fmap . fmap . first + +instance Applicative Parser where + pure a = Parser (\s -> Just (a, s)) + (Parser fp) <*> xp = Parser $ \s -> + case fp s of + Nothing -> Nothing + Just (f,s') -> runParser (f <$> xp) s' + +instance Alternative Parser where + empty = Parser (const Nothing) + Parser p1 <|> Parser p2 = Parser $ liftA2 (<|>) p1 p2 diff --git a/hw11/SExpr.hs b/hw11/SExpr.hs new file mode 100644 index 0000000..78ae980 --- /dev/null +++ b/hw11/SExpr.hs @@ -0,0 +1,46 @@ +{- CIS 194 HW 11 + due Monday, 8 April +-} + +module SExpr where + +import AParser +import Control.Applicative + +------------------------------------------------------------ +-- 1. Parsing repetitions +------------------------------------------------------------ + +zeroOrMore :: Parser a -> Parser [a] +zeroOrMore p = undefined + +oneOrMore :: Parser a -> Parser [a] +oneOrMore p = undefined + +------------------------------------------------------------ +-- 2. Utilities +------------------------------------------------------------ + +spaces :: Parser String +spaces = undefined + +ident :: Parser String +ident = undefined + +------------------------------------------------------------ +-- 3. Parsing S-expressions +------------------------------------------------------------ + +-- An "identifier" is represented as just a String; however, only +-- those Strings consisting of a letter followed by any number of +-- letters and digits are valid identifiers. +type Ident = String + +-- An "atom" is either an integer value or an identifier. +data Atom = N Integer | I Ident + deriving Show + +-- An S-expression is either an atom, or a list of S-expressions. +data SExpr = A Atom + | Comb [SExpr] + deriving Show -- 2.37.2