| Thread overview | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
October 19, 2008 evolution | ||||
|---|---|---|---|---|
| ||||
I plan to overhaul a number of modules in Phobos2, such as std.algorithm, std.stdio, and std.random. The changes will render existing code using those modules largely uncompilable. I wonder what a good evolution scheme we should adopt. Walter suggested that I move the old modules in etc/, so changing e.g. std.algorithm to etc.algorithm should make legacy code work. Is this agreeable? Are there better possibilities? Thanks, Andrei | ||||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | Andrei Alexandrescu Wrote:
> I plan to overhaul a number of modules in Phobos2, such as std.algorithm, std.stdio, and std.random. The changes will render existing code using those modules largely uncompilable. I wonder what a good evolution scheme we should adopt. Walter suggested that I move the old modules in etc/, so changing e.g. std.algorithm to etc.algorithm should make legacy code work.
>
> Is this agreeable? Are there better possibilities?
>
>
> Thanks,
>
> Andrei
D has a deprecated keyword... Could that be used?
| |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | Andrei Alexandrescu Wrote:
> Walter suggested that I move the old modules in etc/, so changing e.g. std.algorithm to etc.algorithm should make legacy code work.
>
may be std.old.*?
| |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to ore-sama | On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: > Andrei Alexandrescu Wrote: > >> Walter suggested that I move the >> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >> should make legacy code work. A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. > may be std.old.*? I like that better than etc. Maybe even std.deprecate.* Or std_deprecated.* (I think a package name can't be a keyword, right? If it could then I'd say std.deprecated.*) I don't like etc though -- it doesn't imply to me at all that the stuff inside it would be old and deprecated. --bb | |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Jason House | Jason House wrote:
> Andrei Alexandrescu Wrote:
>
>> I plan to overhaul a number of modules in Phobos2, such as std.algorithm, std.stdio, and std.random. The changes will render existing code using those modules largely uncompilable. I wonder what a good evolution scheme we should adopt. Walter suggested that I move the old modules in etc/, so changing e.g. std.algorithm to etc.algorithm should make legacy code work.
>>
>> Is this agreeable? Are there better possibilities?
>>
>>
>> Thanks,
>>
>> Andrei
>
> D has a deprecated keyword... Could that be used?
>
vote++ for deprecated;
| |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | On Sun, 19 Oct 2008 18:04:11 +0900, Bill Baxter wrote: > On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: >> Andrei Alexandrescu Wrote: >> >>> Walter suggested that I move the >>> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >>> should make legacy code work. "etc" doesn't mean deprecated or old in any way in letters or the unix etc/ folder. > A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. I think that's the way Tango does it (at least for popular packages). >> may be std.old.*? Sounds good! | |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | On Sun, 19 Oct 2008 18:04:11 +0900, Bill Baxter wrote: > On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: >> Andrei Alexandrescu Wrote: >> >>> Walter suggested that I move the >>> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >>> should make legacy code work. "etc" doesn't mean deprecated or old in any way in letters or the unix etc/ folder. > A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. I think that's the way Tango does it (at least for popular packages). >> may be std.old.*? Sounds good! | |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | On Sun, 19 Oct 2008 18:04:11 +0900, Bill Baxter wrote: > On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: >> Andrei Alexandrescu Wrote: >> >>> Walter suggested that I move the >>> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >>> should make legacy code work. "etc" doesn't mean deprecated or old in any way in letters or the unix etc/ folder. > A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. I think that's the way Tango does it (at least for popular packages). >> may be std.old.*? Sounds good! | |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | On Sun, 19 Oct 2008 18:04:11 +0900, Bill Baxter wrote: > On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: >> Andrei Alexandrescu Wrote: >> >>> Walter suggested that I move the >>> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >>> should make legacy code work. "etc" doesn't mean deprecated or old in any way in letters or the unix etc/ folder. > A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. I think that's the way Tango does it (at least for popular packages). >> may be std.old.*? Sounds good! | |||
October 19, 2008 Re: evolution | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Bill Baxter | On Sun, 19 Oct 2008 18:04:11 +0900, Bill Baxter wrote: > On Sun, Oct 19, 2008 at 3:17 PM, ore-sama <spam@here.lot> wrote: >> Andrei Alexandrescu Wrote: >> >>> Walter suggested that I move the >>> old modules in etc/, so changing e.g. std.algorithm to etc.algorithm >>> should make legacy code work. "etc" doesn't mean deprecated or old in any way in letters or the unix etc/ folder. > A nicer way to do it would be to make it all deprecated (but still operational) in one release, then replace it in the next release. I think that's the way Tango does it (at least for popular packages). >> may be std.old.*? Sounds good! | |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply