November 14, 2012
On Wednesday, 14 November 2012 at 08:04:55 UTC, Jonathan M Davis wrote:
 but I'm one of
> the Phobos
> developers. It's fine if you use master (it could help us find regressions if
> nothing else), but I wouldn't really advise using it just to be able to use
> the -di flag.

There have been a few other recent bug fixes that have been giving me enough headaches for me to want to try it it out. By the looks of things, if I'm to make real use out of D, I'll have to learn how to fix D as well.

>
> Also, some of us are hoping that the change to deprecated will be reverted in
> favor of making it so that warnings will be the default for using deprecated

Yes, that's what makes the most sense.

> symbols rather than having error be the default. Having -di is nice, but it
> really doesn't fix much. The main problem (at least from the library writer's
> point of view) is that deprecating anything instantly breaks the code of
> anyone using that the now deprecated symbol. -di makes it so that a programmer
> can protect themselves from that, but it still shackles the library writer
> such that they can't deprecate anything if they don't ever want to break
> anyone's code without giving more warning that a note in the changelog or
> documentation.

This subject always makes me think of Python, however, it also reminds me of the trap C++ fell into. Personally, I prefer dealing with a few breaking changes now and then rather than sticking with not-so-good decisions forever. In terms of man hours wasted, sticking with a poor design choice can eat up far more man hours over the years than the time taken to deal with a real fix. But I do understand both sides of the coin having been there myself. IMO, so long as you can stick with an older version of the compiler and library for legacy code, you're OK. You guys may want to ensure that older version of a library and compiler can easily co-exist on the same OS installation as a part of the solution to the deprecation breakage dilemma. If a programmer could choose both the compiler version, and a library version for importing into his source code, that would be excellent.

--rt


1 2
Next ›   Last »