    e :- e! prints the decimal expansion of e
         to see a reasonable number of digits use krc -h 1000000;
    e = convert (2:ones)

    ones = 1:ones

    convert (d:x) = d:convert (normalise 2 (0:mult x))

    mult x = {10 * a|a<-x}

    normalise c (d:e:x) = d:normalise (c + 1) (e:x), e + 9 < c
                        = carry c (d:normalise (c + 1) (e:x))

    carry c (d:e:x) = d + e / c:e % c:x
