(App f x) = (f x)
(Succ x) = (+ x 1)
(Main) = (Pair (App Succ 0) (App @x(Succ x) 0))
This HVM code reduces (Main) to (Pair ((Succ) 0) 1). I would intuitively expect (Pair 1 1).
My understanding for this is that in (App Succ 0), the expression Succ is actually shorthand for (Succ), so we have (App (Succ) 0) which reduces to ((Succ) 0) which does not reduce.
Would this be considered an issue, or just a gotcha for newcomers?
This HVM code reduces
(Main)to(Pair ((Succ) 0) 1). I would intuitively expect(Pair 1 1).My understanding for this is that in
(App Succ 0), the expressionSuccis actually shorthand for(Succ), so we have(App (Succ) 0)which reduces to((Succ) 0)which does not reduce.Would this be considered an issue, or just a gotcha for newcomers?