Re^6: Perl 6: Managing breakages across Rakudo versions
by Anonymous Monk on Jul 17, 2012 at 11:47 UTC
|
This doesn't fit in to what is the general definition of a support policy/stability policy.
Perl 6 is making this a habit to take well used, defined and understood terms and give them totally different meanings. And then then expect the whole world to relearn those new meanings.
The general definition of a support/stability policy is to define what will be fixed, when it will be fixed, and till how long the fixes will be provided between two 'No going back from once made to public' releases. That's how Perl 5 defines it and all software that is released
I think what you are talking of is number of test cases failed or spec coverage affected with a particular refactoring effort. In that case a stability policy is meaningless. For a programming language, many features depend on each other.
A program has many parts, many that depend on each other. If you say you are breaking a very tiny part of it, in essence you break the whole program Eg: If you break the addition operator, you are likely to break all while loops in a program, that is likely to break nearly everything. Therefore a stability policy for any such non backwards compatible release doesn't make much sense.
| [reply] |
|
I think the idea is to make Rakudo a viable platform for developing extensions (like, say, LWP6, DBI6, AnyEvent6) for. Nobody will port a library to Rakudo if there is no soft or hard promise of how much breakage will happen how fast.
I interpret the call for comments as an attempt to gauge how much interest there is in stability of Rakudo, and/or as an announcement that Rakudo will try to change less radically or less quickly than it did before.
| [reply] |
|
This doesn't fit in to what is the general definition of a support policy/stability policy.
So, who said we are going to have a support policy/stability policy, and that it doesn't meet the general definition of these terms? Once again, we were asking for feedback on how to manage changes. I think you're reading things that weren't written.
If you are a user or a potential use of Rakudo, actual, non-bikeshedding feedback on that topic is very much appreciated.
| [reply] |
|
I will give you a frank feedback on what I think should be the way forward for managing things in Rakudo
1. No more major rewrites, as they break a lot of code and a lot of catching up is required in the months that follow.
2. Implementation for at least one backend complete, which is backwards compatible, has basic libraries and usable documentation.
3. Path towards making Perl 5 and CPAN compatible defined, and planned to achieve over a period of time.
| [reply] |
|
|
|
|
I think what you are talking of is number of test cases failed or spec coverage affected with a particular refactoring effort.
No.
Eg: If you break the addition operator, you are likely to break all while loops in a program, that is likely to break nearly everything. Therefore a stability policy for any such non backwards compatible release doesn't make much sense.
Imagine that Perl 6 and Rakudo have reached the point that it's very unlikely that such a basic problem would occur but might. More generally, issues are much more likely to arise than with a mature product such as Perl 5.
If you were writing Perl 6 code that runs under Rakudo, wouldn't you want to know what the Rakudo team thinks about such things? Wouldn't you want to know whether they'd consciously break the addition operator and how much notice you might get if they did, and what happens if it occurs accidentally, and so on? Wouldn't you want to know what explicit commitments they are making in this regard? Wouldn't you want to participate in discussions about this?
| [reply] |
|
| [reply] |
|
|
|
If you are guaranteed to break stuff(which is no backwards compatibility) a stability policy has little meaning.
I cannot imagine anyone, breaking something for just fun. I know there are valid reasons why anybody would break anything.
If you want to discuss about a stability policy you must first work towards a backward compatible release
| [reply] |