Skip to Content
Learn Red ? Fundamentals of Red
book

Learn Red ? Fundamentals of Red

by Ivo Balbaert
May 2018
Beginner content levelBeginner
252 pages
6h 19m
English
Packt Publishing
Content preview from Learn Red ? Fundamentals of Red

Recursive functions

A function is recursive when it calls itself with another value for its argument. After a number of recursive calls, a base case must be reached that ends the recursion (otherwise it will go on indefinitely). A common example is the calculation of the factorial of a number, which goes like this: 

4! = 4 x 3 x 2 x 1 = 4 x 3! = 4 x 3 x 2! = 4 x 3 x 2 x 1! = 4 x 3 x 2 x 1 x 0! = 24 with the base case—0! = 1.

This can be easily translated into a Red fact function:

fact: func [n][        if n = 0 [ return 1]        n * fact n - 1]fact 4 ; 24

Here we used func, but, sometimes, recursion may need local variables, and function will then be more useful, because, for a function, locals are the default.

Now evaluate the following:

fact 4.0 ;(1) ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

How I Built a Personal Board of Directors With GenAI

How I Built a Personal Board of Directors With GenAI

Vipin Gupta
How to Become a Game-Changing Leader

How to Become a Game-Changing Leader

Douglas A. Ready, Alan Mulally
Why AI Demands a New Breed of Leaders

Why AI Demands a New Breed of Leaders

Faisal Hoque, Thomas Davenport, Erik Nelson

Publisher Resources

ISBN: 9781789130706Supplemental Content