There is often a debate in the D community how the defaults could have been better: pure, @safe, const by default, no GC by default etc.
But not every bit of code need to be perfect. Code must prove its usefulness first and foremost, before the need to be reliable, safe, fast and beautiful even enter the picture.
I'd go as far as to say, thinking of a nascent project as something perfect and beautiful likely leads to over-idealization and will delay the time to completion many-folds.
Ability to write ugly code is - for me - a feature.