Please be more careful when changing the language behavior

Panke tobias at pankrath.net
Thu Jun 4 15:36:34 UTC 2020


On Thursday, 4 June 2020 at 06:47:16 UTC, mw wrote:
> Yes, I think that's another option we can consider.
>
> Let the user explicitly choose on the command-line, for each 
> feature s/he want to use.
>
>
> And quite interesting, this method (way of thinking) is exactly 
> the key idea how Eiffel solved the multiple inheritance 
> difficulty, while other language didn't: i.e. deal with each 
> feature individually (in Eiffel), instead of all-or-nothing 
> approach (in other languages).  (This is a bit off-topic on 
> this thread, I will start a new thread about multiple 
> inheritance in Eiffel).

I think the crucial thing is that you can put your code in a 
state where it works both with '--incompatible_<name>=off' and 
'--incompatible_<name>=on. Thus you can migrate one feature, one 
part of your code base at a time. So it's not a all-or-nothing 
approach as it is when migrating to the next mayor compiler 
version that may contain multiple breaking changes at once.


More information about the Digitalmars-d mailing list