Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

Re^3: Perl 6: Managing breakages across Rakudo versions

by moritz (Cardinal)
on Jul 17, 2012 at 10:49 UTC ( #982198=note: print w/ replies, xml ) Need Help??

Comment on Re^3: Perl 6: Managing breakages across Rakudo versions
Re^4: Perl 6: Managing breakages across Rakudo versions
by Anonymous Monk on Jul 17, 2012 at 11:10 UTC

    Well by all means, that is a great thing

    But if you are not going to break backwards compatibility, that more or less counts as a production release, because then you are announcing the future releases are going to be feature additions and bug fixes but not deprecations and no feature breakage are going to happen

    In that case the original email in which Patrick mentions Perl 6's versioning system of specifying version numbers to denote a set of semantics that remain valid with backwards compatibility stands to apply.

    Anything less than this isn't a stability support policy at all. Because then you are just saying you are going to fix bugs, which you are going to anyway.

    So should we take this a indication for a first backward compatible(No going back after this) Perl 6 release, or more appropriately a production release? In such a case I'm game for a discussion, because that would make a lot of dreams of many people come true.

      But if you are not going to break backwards compatibility

      "not breaking backwards compatiblity" isn't on the menu plate at all. The original question was how to manage breaking changes:

      In practice what this means is that we want to minimize the number and impact of any "breakages" that people encounter when using existing code on subsequent releases of Rakudo Star.

      So, the question is not "should we stop to break backwards compatiblity", but "how do we do it while doing least harm to our users".

      I don't think that chosing one release and declaring it "production ready" out of the blue, and not doing any breaking changes is going to work. It's much more realistic to first learn how to handle such changes gracefully, then reduce the number of breaking changes, and if that works well, we can start using a stricter policy.

        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.

Re^4: Perl 6: Managing breakages across Rakudo versions
by jdporter (Canon) on Jul 17, 2012 at 12:30 UTC

    Then Perl 6 is in production, whether you (they?) admit it or not. Better to admit it, and re-frame everything, not just the "stability policy".

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://982198]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (10)
As of 2014-08-20 19:39 GMT
Find Nodes?
    Voting Booth?

    The best computer themed movie is:

    Results (122 votes), past polls