-- Anwenden eines Prädikates auf zwei ArbInt-Werte translate :: ([Digit] -> [Digit] -> Bool) -> (ArbInt -> ArbInt -> Bool) translate op x y = op xs ys where (xs, ys) = align (digits x, digits y) -- Installation des ArbInt-Typen für Gleichheitstests instance Eq ArbInt where (==) = translate (==) -- Installation des ArbInt-Typen für Vergleiche instance Ord ArbInt where (<=) = translate (<=)