Download presentation

Presentation is loading. Please wait.

Published byEric Page Modified over 5 years ago

1
CS4026 Formal Models of Computation Running Haskell Programs – power

2
formal models of computation 2 How functional programs work… We have seen simple programs such as Lets now see how they are executed Given the program above, we get the following: But how? power x 0 = 1 power x (n+1) = x * (power x n) power 2 3 8

3
formal models of computation 3 How functional programs work… Execution: power 2 3 power x 0 = 1 power x (n+1) = x * (power x n)

4
formal models of computation 4 How functional programs work… Execution: power 2 3 power x 0 = 1 power x (n+1) = x * (power x n) 3 matches (n+1), assigning 2 to n

5
formal models of computation 5 How functional programs work… Execution: power 2 3 2 * (power 2 2) power x 0 = 1 power x (n+1) = x * (power x n)

6
formal models of computation 6 How functional programs work… Execution: power 2 3 2 * (power 2 2) power x 0 = 1 power x (n+1) = x * (power x n)

7
formal models of computation 7 How functional programs work… Execution: power 2 3 2 * (power 2 2) power x 0 = 1 power x (n+1) = x * (power x n) 2 matches (n+1), assigning 1 to n

8
formal models of computation 8 How functional programs work… Execution: power 2 3 2 * (2 * (power 2 1)) power x 0 = 1 power x (n+1) = x * (power x n)

9
formal models of computation 9 How functional programs work… Execution: power 2 3 2 * (2 * (power 2 1)) power x 0 = 1 power x (n+1) = x * (power x n)

10
formal models of computation 10 How functional programs work… Execution: power 2 3 2 * (2 * (power 2 1)) power x 0 = 1 power x (n+1) = x * (power x n) 1 matches (n+1), assigning 0 to n

11
formal models of computation 11 How functional programs work… Execution: power 2 3 2 * (2 * (2 * (power 2 0))) power x 0 = 1 power x (n+1) = x * (power x n)

12
formal models of computation 12 How functional programs work… Execution: power 2 3 2 * (2 * (2 * (power 2 0))) power x 0 = 1 power x (n+1) = x * (power x n)

13
formal models of computation 13 How functional programs work… Execution: power 2 3 2 * (2 * (2 * (power 2 0))) power x 0 = 1 power x (n+1) = x * (power x n)

14
formal models of computation 14 How functional programs work… Execution: power 2 3 2 * (2 * (2 * (1))) power x 0 = 1 power x (n+1) = x * (power x n)

15
formal models of computation 15 How functional programs work… Execution: power 2 3 8 power x 0 = 1 power x (n+1) = x * (power x n)

Similar presentations

© 2019 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google