Call Compiled Code from Compiled Code
The Wolfram Compiler works well with compiled Wolfram Language code. A compiled function can accept other compiled functions as arguments. The abstractive power that this provides allows a tremendous amount of innovative solutions to be written.
The function bisectionRoot[f, lim0, lim1] finds a root of f by bisecting the interval from lim0 to lim1. The rule of the form {in1, in2, …}->out in the second argument of Typed indicates that the variable f is a function, in this case one that takes and returns a "Real64".
Compile the function whose root will be found.
Find several roots of f. Of course, a different function could have been studied without changing bisectionRoot.