(* Finds the GCD of two integers using Euclid's algorithm. *) (* Based on a program by Chuck Hoffman. *) function remainder(a: integer, b: integer): integer if a < b then a else remainder(a-b, b) function gcd(a: integer, b: integer): integer if b = 0 then a else gcd(b, remainder(a, b)) function main() : integer gcd(5,8)