Hallo everyone,
 
I try to understand how the following recursive function works:
 
extGCD :: Integer -> Integer -> [Integer]       
extGCD a 0 = [1, 0, a]
extGCD a b = let (q, r) = a `quotRem` b
                        [s, t, g] = extGCD b r
                     in  [t, s - q * t, abs g]
 
 Some hints to explain??
 
Regards,
Z.Stanasiuk