Skip to content

Commit 65c33f9

Browse files
jrp2014Adam Wespiser
authored andcommitted
blank unuseds
1 parent 0ff3fbd commit 65c33f9

File tree

2 files changed

+36
-36
lines changed

2 files changed

+36
-36
lines changed

src/Eval.hs

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ getVar (Atom atom) = do
121121
getVar n = throw $ TypeMismatch "failure to get variable: " n
122122

123123
ensureAtom :: LispVal -> Eval LispVal
124-
ensureAtom n@(Atom txt) = return n
124+
ensureAtom n@(Atom _) = return n
125125
ensureAtom n = throw $ TypeMismatch "expected an atomic value" n
126126

127127
extractVar :: LispVal -> T.Text
@@ -134,7 +134,7 @@ getEven (x:xs) = x : getOdd xs
134134

135135
getOdd :: [t] -> [t]
136136
getOdd [] = []
137-
getOdd (x:xs) = getEven xs
137+
getOdd (_:xs) = getEven xs
138138

139139

140140
applyLambda :: LispVal -> [LispVal] -> [LispVal] -> Eval LispVal
@@ -178,15 +178,15 @@ eval (List [Atom "if", pred, truExpr, flsExpr]) = do
178178
(Bool True) -> eval truExpr
179179
(Bool False) -> eval flsExpr
180180
_ -> throw $ BadSpecialForm "if's first arg must eval into a boolean"
181-
eval args@(List ( (:) (Atom "if") _)) = throw $ BadSpecialForm "(if <bool> <s-expr> <s-expr>)"
181+
eval (List ( (:) (Atom "if") _)) = throw $ BadSpecialForm "(if <bool> <s-expr> <s-expr>)"
182182

183183
eval (List [Atom "begin", rest]) = evalBody rest
184184
eval (List ((:) (Atom "begin") rest )) = evalBody $ List rest
185185

186186
eval (List [Atom "define", varExpr, defExpr]) = do --top-level define
187187
EnvCtx{} <- ask
188-
varAtom <- ensureAtom varExpr
189-
evalVal <- eval defExpr
188+
_varAtom <- ensureAtom varExpr
189+
_evalVal <- eval defExpr
190190
bindArgsEval [varExpr] [defExpr] varExpr
191191

192192
eval (List [Atom "let", List pairs, expr]) = do
@@ -203,33 +203,33 @@ eval (List (Atom "lambda":_) ) = throw $ BadSpecialForm "lambda function expects
203203

204204

205205
-- needed to get cadr, etc to work
206-
eval all@(List [Atom "cdr", List [Atom "quote", List (x:xs)]]) =
206+
eval (List [Atom "cdr", List [Atom "quote", List (_:xs)]]) =
207207
return $ List xs
208-
eval all@(List [Atom "cdr", arg@(List (x:xs))]) =
208+
eval (List [Atom "cdr", arg@(List (x:xs))]) =
209209
case x of
210210
-- proxy for if the list can be evaluated
211211
Atom _ -> do val <- eval arg
212212
eval $ List [Atom "cdr", val]
213213
_ -> return $ List xs
214214

215215

216-
eval all@(List [Atom "car", List [Atom "quote", List (x:xs)]]) =
216+
eval (List [Atom "car", List [Atom "quote", List (x:_)]]) =
217217
return x
218-
eval all@(List [Atom "car", arg@(List (x:xs))]) =
218+
eval (List [Atom "car", arg@(List (x:_))]) =
219219
case x of
220220
Atom _ -> do val <- eval arg
221221
eval $ List [Atom "car", val]
222222
_ -> return x
223223

224224

225-
eval all@(List ((:) x xs)) = do
225+
eval (List ((:) x xs)) = do
226226
EnvCtx{..} <- ask
227227
funVar <- eval x
228228
xVal <- mapM eval xs
229229
--liftIO $ TIO.putStr $ T.concat ["eval:\n ", T.pack $ show all,"\n * fnCall: ", T.pack $ show x, "\n * fnVar ", T.pack $ show funVar,"\n * args: ",T.concat (T.pack . show <$> xVal) ,T.pack "\n"]
230230
case funVar of
231231
(Fun (IFunc internalFn)) -> internalFn xVal
232-
(Lambda (IFunc definedFn) (EnvCtx benv bfenv)) -> local (const $ EnvCtx benv fenv) $ definedFn xVal
232+
(Lambda (IFunc definedFn) (EnvCtx benv _bfenv)) -> local (const $ EnvCtx benv fenv) $ definedFn xVal
233233

234234
_ -> throw $ NotFunction funVar
235235

@@ -242,12 +242,12 @@ updateEnv var e@(Lambda _ _) EnvCtx{..} = EnvCtx env $ Map.insert var e fenv
242242
updateEnv var e EnvCtx{..} = EnvCtx (Map.insert var e env) fenv
243243

244244
evalBody :: LispVal -> Eval LispVal
245-
evalBody x@(List [List ((:) (Atom "define") [Atom var, defExpr]), rest]) = do
245+
evalBody (List [List ((:) (Atom "define") [Atom var, defExpr]), rest]) = do
246246
evalVal <- eval defExpr
247247
ctx <- ask
248248
local (const $ updateEnv var evalVal ctx) $ eval rest
249249

250-
evalBody x@(List ((:) (List ((:) (Atom "define") [Atom var, defExpr])) rest)) = do
250+
evalBody (List ((:) (List ((:) (Atom "define") [Atom var, defExpr])) rest)) = do
251251
evalVal <- eval defExpr
252252
ctx <- ask
253253
local (const $ updateEnv var evalVal ctx) $ evalBody $ List rest

src/Prim.hs

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -113,40 +113,40 @@ putTextFile fileName msg handle = do
113113
binopFold :: Binary -> LispVal -> [LispVal] -> Eval LispVal
114114
binopFold op farg args = case args of
115115
[a,b] -> op a b
116-
(a:as) -> foldM op farg args
116+
(_a:_as) -> foldM op farg args
117117
[]-> throw $ NumArgs 2 args
118118

119119
numBool :: (Integer -> Bool) -> LispVal -> Eval LispVal
120120
numBool op (Number x) = return $ Bool $ op x
121-
numBool op x = throw $ TypeMismatch "numeric op " x
121+
numBool _ x = throw $ TypeMismatch "numeric op " x
122122

123123
numOp :: (Integer -> Integer -> Integer) -> LispVal -> LispVal -> Eval LispVal
124124
numOp op (Number x) (Number y) = return $ Number $ op x y
125-
numOp op Nil (Number y) = return $ Number y
126-
numOp op (Number x) Nil = return $ Number x
127-
numOp op x (Number y) = throw $ TypeMismatch "numeric op " x
128-
numOp op (Number x) y = throw $ TypeMismatch "numeric op " y
129-
numOp op x y = throw $ TypeMismatch "numeric op " x
125+
numOp _ Nil (Number y) = return $ Number y
126+
numOp _ (Number x) Nil = return $ Number x
127+
numOp _ x (Number _) = throw $ TypeMismatch "numeric op " x
128+
numOp _ (Number _) y = throw $ TypeMismatch "numeric op " y
129+
numOp _ x _ = throw $ TypeMismatch "numeric op " x
130130

131131
strOp :: (T.Text -> T.Text -> T.Text) -> LispVal -> LispVal -> Eval LispVal
132132
strOp op (String x) (String y) = return $ String $ op x y
133-
strOp op Nil (String y) = return $ String y
134-
strOp op (String x) Nil = return $ String x
135-
strOp op x (String y) = throw $ TypeMismatch "string op " x
136-
strOp op (String x) y = throw $ TypeMismatch "string op " y
137-
strOp op x y = throw $ TypeMismatch "string op " x
133+
strOp _ Nil (String y) = return $ String y
134+
strOp _ (String x) Nil = return $ String x
135+
strOp _ x (String _) = throw $ TypeMismatch "string op " x
136+
strOp _ (String _) y = throw $ TypeMismatch "string op " y
137+
strOp _ x _ = throw $ TypeMismatch "string op " x
138138

139139
eqOp :: (Bool -> Bool -> Bool) -> LispVal -> LispVal -> Eval LispVal
140140
eqOp op (Bool x) (Bool y) = return $ Bool $ op x y
141-
eqOp op x (Bool y) = throw $ TypeMismatch "bool op " x
142-
eqOp op (Bool x) y = throw $ TypeMismatch "bool op " y
143-
eqOp op x y = throw $ TypeMismatch "bool op " x
141+
eqOp _ x (Bool _) = throw $ TypeMismatch "bool op " x
142+
eqOp _ (Bool _) y = throw $ TypeMismatch "bool op " y
143+
eqOp _ x _ = throw $ TypeMismatch "bool op " x
144144

145145
numCmp :: (Integer -> Integer -> Bool) -> LispVal -> LispVal -> Eval LispVal
146146
numCmp op (Number x) (Number y) = return . Bool $ op x y
147-
numCmp op x (Number y) = throw $ TypeMismatch "numeric op " x
148-
numCmp op (Number x) y = throw $ TypeMismatch "numeric op " y
149-
numCmp op x y = throw $ TypeMismatch "numeric op " x
147+
numCmp _ x (Number _) = throw $ TypeMismatch "numeric op " x
148+
numCmp _ (Number _) y = throw $ TypeMismatch "numeric op " y
149+
numCmp _ x _ = throw $ TypeMismatch "numeric op " x
150150

151151

152152
notOp :: LispVal -> Eval LispVal
@@ -163,22 +163,22 @@ eqCmd Nil Nil = return $ Bool True
163163
eqCmd _ _ = return $ Bool False
164164

165165
cons :: [LispVal] -> Eval LispVal
166-
cons [x,y@(List yList)] = return $ List $ x:yList
167-
cons [x,y] = return $ List [x,y]
166+
cons [x,List yList] = return $ List $ x:yList
167+
cons [x,y] = return $ List [x,y]
168168
cons _ = throw $ ExpectedList "cons, in second argumnet"
169169

170170

171171
car :: [LispVal] -> Eval LispVal
172172
car [List [] ] = return Nil
173173
car [List (x:_)] = return x
174174
car [] = return Nil
175-
car x = throw $ ExpectedList "car"
175+
car _ = throw $ ExpectedList "car"
176176

177177
cdr :: [LispVal] -> Eval LispVal
178-
cdr [List (x:xs)] = return $ List xs
178+
cdr [List (_:xs)] = return $ List xs
179179
cdr [List []] = return Nil
180180
cdr [] = return Nil
181-
cdr x = throw $ ExpectedList "cdr"
181+
cdr _ = throw $ ExpectedList "cdr"
182182

183183
quote :: [LispVal] -> Eval LispVal
184184
quote [List xs] = return $ List $ Atom "quote" : xs

0 commit comments

Comments
 (0)