<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 09/12/13 19:05, giucam (contact) wrote:<br>
    <blockquote
cite="mid:38fecb41f41449f692bf662e0868a587@000S-EX-HUB-NP1.unimelb.edu.au"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <div dir="ltr">Having said all that, I <i>strongly dislike</i> changing
        libraries like this. I've been burned by this before, when the
        Mercury team re-ordered some arguments to map.insert to be more
        conducive to state variables, breaking hundreds of lines of
        code. This change would be possibly worse, because it wouldn't
        triggered any compiler errors, but may introduce subtle
        performance issues into peoples' code that has already taken
        into account the characteristics of this predicate.<br>
      </div>
    </blockquote>
    <br>
    I'd like to amplify Matt's comments on this.  Changing argument
    order in the standard library has been a constant irritation to me
    and my students in Declarative Programming.  Students do their work
    on their own laptops, and then submit it to be assessed on centrally
    maintained machines, and these tend to be different versions.  It's
    mystifying at first that the the code won't compile, and
    unfortunately, the error messages are often not very helpful
    locating the problem in such cases.  OK, it's not unexpected to find
    that code written with the latest library may not work with an older
    library version, but the fact you can't drop back to using the old
    version and expect it to work with both is not what one expects, and
    it can be time consuming and frustrating to engineer code that will
    work with multiple versions of the mercury library.<br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Peter Schachte               I suppose it is tempting, if the only tool
University of Melbourne      you have is a hammer, to treat everything
<a class="moz-txt-link-abbreviated" href="mailto:schachte@unimelb.edu.au">schachte@unimelb.edu.au</a>      as if it were a nail. -- Abraham Maslow
<a class="moz-txt-link-abbreviated" href="http://www.cs.mu.oz.au/~schachte/">www.cs.mu.oz.au/~schachte/</a>
Phone: +61 3 8344 1338
I support the NTEU's campaign for a fair enterprise agreement.
Find out more: nteu.org.au/melb | facebook.com/nteu.unimelb
</pre>
  </body>
</html>