diff --git a/primer/src/Primer/Eval/Redex.hs b/primer/src/Primer/Eval/Redex.hs index fb71bdbce..899882798 100644 --- a/primer/src/Primer/Eval/Redex.hs +++ b/primer/src/Primer/Eval/Redex.hs @@ -229,8 +229,8 @@ data Redex , def :: ASTDef -- ^ What is its definition } - | -- x ~> e where we are inside the scope of a let x = e in ... - InlineLet + | -- let x = e in x ~> e + InlineLet -- TODO/REVIEW: don't know if I want to change this def for push-down-lets, as only inline an immediate usage { var :: LVarName -- ^ What variable are we inlining , expr :: Expr @@ -240,8 +240,8 @@ data Redex , varID :: ID -- ^ Where was the occurrence (used for details) } - | -- x ~> letrec x:T=t in t:T where we are inside the scope of a letrec x : T = t in ... - InlineLetrec + | -- letrec x = t : T in x ~> letrec x = t : T in t : T + InlineLetrec -- TODO/REVIEW: don't know if I want to change this def for push-down-lets, as only inline an immediate usage { var :: LVarName -- ^ What variable are we inlining , expr :: Expr @@ -428,6 +428,7 @@ data RedexType -- ^ What is its definition (used for reduction) , letID :: ID -- ^ Where was the binding (used for details) + -- TODO/REVIEW: it seems a bit silly recording both these IDs, since they'll be right next to each other... , varID :: ID -- ^ Where was the occurrence (used for details) }