It's the GNU way:
1. Refuse to do something properly because it will make it too easy... or something.
2. Wait until someone else gets fed up enough and makes a better version.
3. Fade into irrelevance.
See: GCC/Clang, glibc/musl, Bash/??? (someone please make something sane)
It's a bit sad that this is still unsolved, probably due to the GNU people's hatred for closed-source distribution.