I suppose you read: RFC: private by default for values ?
I think we are a bit hesitant to do such a big change after the massive “uncurried by default” change.
Other than that there are benefits in interface files concerning compilation speed. It’s basically the secret sauce for scalability.
That said I wholly agree that it’s not a great fit for everything that utilizes fast refresh. But I also think it is great for prototyping if you don’t need to export every single function separately.