<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Dec 9, 2013 at 4:56 PM, Paul Bone <span dir="ltr"><<a href="mailto:paul@bone.id.au" target="_blank">paul@bone.id.au</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Mon, Dec 09, 2013 at 04:40:42PM +1100, Julien Fischer wrote:<br>
> On Mon, Dec 9, 2013 at 4:31 PM, Paul Bone <<a href="mailto:paul@bone.id.au">paul@bone.id.au</a>> wrote:<br>
> ><br>
</div><div class="im">> > Check again, I'm asserting that the _current_ one isn't good for SV<br>
> ><br>
><br>
> I get that.<br>
><br>
><br>
> > notation and the proposed change is.<br>
><br>
><br>
> *What* proposed change?  So far as I can see you haven't proposed<br>
> any concrete change.  My two cents on this:  the current predicate versions<br>
> of map.merge/3 is fine because:<br>
<br>
</div>I'm proposing that merge(MapA, MapB, Map) take time proportional to the size<br>
of MapA.  Currently it takes time proportional to the size of MapB.<br>
<div class="im"><br>
> (1) the efficiency implications of the argument ordering are _clearly_<br>
> documented<br>
> (2) the arguments are in the order that is consistent with what the<br>
> rest of the standard library expects, e.g. list.foldl(map.merge, … does what<br>
> you would expect it to.<br>
<br>
</div>No it doesn't.<br></blockquote><div><br></div><div>What on earth do you think it does then?</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">
> (3) there is no additional overhead in traversing the input maps as<br>
> with Zoltan's proposed version that determines the sizes of the<br>
> inputs dynamically.<br>
<br>
</div>I agree with this point.  However Zoltan's solution was to keep a version of<br>
the predicate no additional runtime costs for those programmers that know<br>
which map is smaller.</blockquote><div><br></div><div>Which should be map.merge/3.</div><div><br></div><div>I'm curious to why (of all things) you think this is a problem.</div><div><br></div><div>Cheers,</div><div>Julien.</div>
<div> </div></div></div></div>