<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>I completely agree with Johan. The problem is to change core APIs too fast. Adding, say, SIMD instructions or having a new type extension (that needs to be explicitly activated with a -X option) shouldn't break packages.</div><div><br></div><div>I'm all for restricting major API changes to once a year, but why can't we have multiple updates to the code generator per year or generally release that don't affect a large number of packages on Hackage?</div><div><br></div><div>Manuel</div><br><div><div>Johan Tibell &lt;<a href="mailto:johan.tibell@gmail.com">johan.tibell@gmail.com</a>&gt;:</div><blockquote type="cite"><div class="gmail_quote">On Fri, Feb 8, 2013 at 6:28 AM, Simon Marlow <span dir="ltr">&lt;<a href="mailto:marlowsd@gmail.com" target="_blank">marlowsd@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; ">


  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>For a while we've been doing one major
      release per year, and 1-2 minor releases.&nbsp; We have a big sign at
      the top of the download page directing people to the platform.&nbsp; We
      arrived here after various discussions in the past - there were
      always a group of people that wanted stability, and a roughly
      equally vocal group of people who wanted the latest bits.&nbsp; So we
      settled on one API-breaking change per year as a compromise.<br>
      <br>
      Since then, the number of packages has ballooned, and there's a
      new factor in the equation: the cost to the ecosystem of an
      API-breaking release of GHC.&nbsp; All that updating of packages
      collectively costs the community a lot of time, for little
      benefit.&nbsp; Lots of package updates contributes to Cabal Hell.&nbsp; The
      package updates need to happen before the platform picks up the
      GHC release, so that when it goes into the platform, the packages
      are ready.<br>
      <br>
      So I think, if anything, there's pressure to have fewer major
      releases of GHC.&nbsp; However, we're doing the opposite: 7.0 to 7.2
      was 10 months, 7.2 to 7.4 was 6 months, 7.4 to 7.6 was 7 months.&nbsp;
      We're getting too efficient at making releases!<br></div></div></blockquote><div><br></div><div>I think we want to decouple GHC "major"&nbsp;releases&nbsp;(as in, we did lots of work) from API breaking releases. For example, GCC has lots of major (or "big") releases, but rarely, if ever, break programs.</div>

<div><br></div><div>I'd be delighted to see a release once in a while that made my programs faster/smaller/buggy without breaking any of them.</div><div><br></div><div>-- Johan</div></div></blockquote></div><br></body></html>