On Friday, 28 November 2014 at 23:33:54 UTC, Walter Bright wrote:
Just for fun, I've decided to try and get MicroEmacs in D added to the dub registry. The last time it compiled was 2 years ago.

I wound up with at least a dozen references to Phobos names that have disappeared.

Only 12?  That's pretty damn good.

No corrective action was indicated, just
"undefined symbol". I have to go refigure out what the code was trying to do, and go poking through the Phobos documentation to see what will work today.

I know there's been a lot of "break my code" advocacy lately, but this code was only 2 years old.

I don't expect any 2 year old software to work with the latest tools. All of my products are tied to the compiler they are built with. I don't upgrade until I'm ready to allocate resources to refactoring and testing. I'm still using Visual Studio 6.0 on some projects.


I fully understand how unfriendly this is to users and how discouraging it can be to have their recently working code shattered and scattered. We need to do a lot better.

Users' migration to the latest tools is in their hands to handle how they wish. It's their responsibility.
* They don't have to upgrade.
* There are beta cycles for them to test with to mitigate risk and inform maintainers of problems. * The project is open source, and developed right out in the open, so all changes are documented, the source code is available, and users have the opportunity to influence the outcome. * Each version is segregated into its own branch, and with diff tools, all changes can be seen relatively easily.
* I could go on.

I'm not buying the argument that D shouldn't evolve because users are carelessly upgrading their tools and expecting everything to just work.

Mike

Reply via email to