@@ -68,8 +68,8 @@ evalTransGraphRelationalExpr (Join exprA exprB) graph = do
6868 exprB' <- evalTransGraphRelationalExpr exprB graph
6969 pure (Join exprA' exprB')
7070evalTransGraphRelationalExpr (Rename attrName1 attrName2 expr) graph = do
71− expr' <- evalTransGraphRelationalExpr expr graph
72− pure (Rename attrName1 attrName2 expr')
71+ let expr' = evalTransGraphRelationalExpr expr graph
72+ Rename attrName1 attrName2 <$> expr'
7373evalTransGraphRelationalExpr (Difference exprA exprB) graph = do
7474 exprA' <- evalTransGraphRelationalExpr exprA graph
7575 exprB' <- evalTransGraphRelationalExpr exprB graph
@@ -79,8 +79,8 @@ evalTransGraphRelationalExpr (Group transAttrNames attrName expr) graph = do
7979 attrNames <- evalTransAttributeNames transAttrNames graph
8080 pure (Group attrNames attrName expr')
8181evalTransGraphRelationalExpr (Ungroup attrName expr) graph = do
82− expr' <- evalTransGraphRelationalExpr expr graph
83− pure (Ungroup attrName expr')
82+ let expr' = evalTransGraphRelationalExpr expr graph
83+ Ungroup attrName <$> expr'
8484evalTransGraphRelationalExpr (Restrict predicateExpr expr) graph = do
8585 expr' <- evalTransGraphRelationalExpr expr graph
8686 predicateExpr' <- evalTransGraphRestrictionPredicateExpr predicateExpr graph
@@ -100,11 +100,11 @@ evalTransGraphRelationalExpr (Extend extendExpr expr) graph = do
100100
101101evalTransGraphTupleExpr :: TransactionGraph -> TransGraphTupleExpr -> Either RelationalError TupleExpr
102102evalTransGraphTupleExpr graph (TupleExpr attrMap) = do
103− attrAssoc <- mapM (\(attrName, atomExpr) -> do
103+ let attrAssoc = mapM (\(attrName, atomExpr) -> do
104104 aExpr <- evalTransGraphAtomExpr graph atomExpr
105105 pure (attrName, aExpr)
106106 ) (M.toList attrMap)
107− pure (TupleExpr (M.fromList attrAssoc))
107+ TupleExpr . M.fromList <$> attrAssoc
108108
109109evalTransGraphAtomExpr :: TransactionGraph -> TransGraphAtomExpr -> Either RelationalError AtomExpr
110110evalTransGraphAtomExpr _ (AttributeAtomExpr aname) = pure $ AttributeAtomExpr aname
@@ -116,8 +116,8 @@ evalTransGraphAtomExpr graph (FunctionAtomExpr funcName args tLookup) = do
116116 atom <- runReader (evalAtomExpr emptyTuple (FunctionAtomExpr funcName args' ())) (RelationalExprStateElems (concreteDatabaseContext trans))
117117 pure (NakedAtomExpr atom)
118118evalTransGraphAtomExpr graph (RelationAtomExpr expr) = do
119− expr' <- evalTransGraphRelationalExpr expr graph
120− pure (RelationAtomExpr expr')
119+ let expr' = evalTransGraphRelationalExpr expr graph
120+ RelationAtomExpr <$> expr'
121121evalTransGraphAtomExpr graph (ConstructedAtomExpr dConsName args tLookup) = do
122122 trans <- lookupTransaction graph tLookup
123123 args' <- mapM (evalTransGraphAtomExpr graph) args
@@ -135,22 +135,22 @@ evalTransGraphRestrictionPredicateExpr (OrPredicate exprA exprB) graph = do
135135 exprB' <- evalTransGraphRestrictionPredicateExpr exprB graph
136136 pure (OrPredicate exprA' exprB')
137137evalTransGraphRestrictionPredicateExpr (NotPredicate expr) graph = do
138− expr' <- evalTransGraphRestrictionPredicateExpr expr graph
139− pure (NotPredicate expr')
138+ let expr' = evalTransGraphRestrictionPredicateExpr expr graph
139+ NotPredicate <$> expr'
140140evalTransGraphRestrictionPredicateExpr (RelationalExprPredicate expr) graph = do
141− expr' <- evalTransGraphRelationalExpr expr graph
142− pure (RelationalExprPredicate expr')
141+ let expr' = evalTransGraphRelationalExpr expr graph
142+ RelationalExprPredicate <$> expr'
143143evalTransGraphRestrictionPredicateExpr (AtomExprPredicate expr) graph = do
144− expr' <- evalTransGraphAtomExpr graph expr
145− pure (AtomExprPredicate expr')
144+ let expr' = evalTransGraphAtomExpr graph expr
145+ AtomExprPredicate <$> expr'
146146evalTransGraphRestrictionPredicateExpr (AttributeEqualityPredicate attrName expr) graph = do
147− expr' <- evalTransGraphAtomExpr graph expr
148− pure (AttributeEqualityPredicate attrName expr')
147+ let expr' = evalTransGraphAtomExpr graph expr
148+ AttributeEqualityPredicate attrName <$> expr'
149149
150150evalTransGraphExtendTupleExpr :: TransGraphExtendTupleExpr -> TransactionGraph -> Either RelationalError ExtendTupleExpr
151151evalTransGraphExtendTupleExpr (AttributeExtendTupleExpr attrName expr) graph = do
152− expr' <- evalTransGraphAtomExpr graph expr
153− pure (AttributeExtendTupleExpr attrName expr')
152+ let expr' = evalTransGraphAtomExpr graph expr
153+ AttributeExtendTupleExpr attrName <$> expr'
154154
155155evalTransGraphAttributeExpr :: TransactionGraph -> TransGraphAttributeExpr -> Either RelationalError AttributeExpr
156156evalTransGraphAttributeExpr graph (AttributeAndTypeNameExpr attrName tCons tLookup) = do