Hi Chris, I would be willing to write such a PEP. It will take a while though, I am not fast at those kinda things.
Currently, fractions.py imports decimal.py, mainly (purely?) for the sake of being able to construct a Fraction from a Decimal. The decimal module is *large* and has other reasons for not becoming builtin too, so ideally, the two should be decoupled.
I started the decoupling as bpo-44115, aka GH-26064 https://github.com/python/cpython/pull/26064 I would be happy about your comments there. I actually have a new idea about how a fraction literal could look like: just write 2/3 as opposed to 2 / 3, and you get a fraction. So: no spaces: fraction, with spaces: float. I hear you crying "but that's illegal, whitespace should not matter!", to which I respond: >>> 3.real File "<stdin>", line 1 3.real ^ SyntaxError: invalid syntax >>> 3 . real 3 Cheers Martin