diff options
Diffstat (limited to 'src/content/chapter1_functions/lesson02_tail_calls/code.gleam')
-rw-r--r-- | src/content/chapter1_functions/lesson02_tail_calls/code.gleam | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/src/content/chapter1_functions/lesson02_tail_calls/code.gleam b/src/content/chapter1_functions/lesson02_tail_calls/code.gleam deleted file mode 100644 index d823eec..0000000 --- a/src/content/chapter1_functions/lesson02_tail_calls/code.gleam +++ /dev/null @@ -1,21 +0,0 @@ -import gleam/io - -pub fn main() { - io.debug(factorial(5)) - io.debug(factorial(7)) -} - -pub fn factorial(x: Int) -> Int { - // The public function calls the private tail recursive function - factorial_loop(x, 1) -} - -fn factorial_loop(x: Int, accumulator: Int) -> Int { - case x { - 1 -> accumulator - - // The last thing this function does is call itself - // In the previous lesson the last thing it did was multiple two ints - _ -> factorial_loop(x - 1, accumulator * x) - } -} |