O'Reilly logo

F# for Quantitative Finance by Johan Astborg

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

More on functional programming

Here we will continue and build on the foundation from the previous chapter on functional programming basics. We will examine some of the more advanced and at the same time useful constructs of the F# language.

Recursive functions

Recursion is a fundamental building block in functional programming. Many problems can be solved in a recursive fashion, and together with pattern matching, it makes up a powerful toolkit.

To define a recursive expression, you use the keyword rec.

Let's start by looking at the famous Fibonacci sequence, which is defined as the sum of the two previous numbers in a recursive sequence. The first two values are set to 0 and 1, respectively, as seed values:

let rec fib n = if n <= 2 then 1 else fib ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required