@@ -716,7 +716,8 @@ check' v@(StringLiteral _) t | t == tyString =
716716 return $ TypedValue True v t
717717check' v@(BooleanLiteral _) t | t == tyBoolean =
718718 return $ TypedValue True v t
719−check' (ArrayLiteral vals) t@(TypeApp a ty) | a == tyArray = do
719+check' (ArrayLiteral vals) t@(TypeApp a ty) = do
720+ a =?= tyArray
720721 array <- ArrayLiteral <$> forM vals (`check` ty)
721722 return $ TypedValue True array t
722723check' (Abs (Left arg) ret) ty@(TypeApp (TypeApp t argTy) retTy) | t == tyFunction = do