Leftmost outermost Reduction (Haskell) -
i got task use leftmost outermost reduction on following expression:
f inc expo 9 (f (*2) expo 3 1) inc defined as:
inc :: int -> int inc x = x+1 expo defined as:
expo :: int -> int expo x = expo (x*2) and f as:
f :: (int->int) -> (int-> int) -> int -> int -> int f g h b = g(a-b) i have absolutely no clue start reduction more functions. read hint redex not contained in other redexes, dont ;(.
i appreciate every tip/help.
the first (leftmost, outermost) reduction for
f inc expo 9 (f (*2) expo 3 1) is apply definition of f, once, f g h b = g(a-b) use g inc, a 9 , b (f (*2) expo 3 1), giving
inc(9 - (f (*2) expo 3 1)) now we're done question asked. that's leftmost, outermost reduction made. notice didn't need use facts other functions, hint getting at.
Comments
Post a Comment