<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 16, 2015 at 7:11 AM, Avinash Dhumane <span dir="ltr"><<a href="mailto:nistrigunya@gmail.com" target="_blank">nistrigunya@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span style="font-size:12.8px">I find it more expressive to use maps wherever I have been using tuples. Especially, when it comes to pattern matching. </span><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">It is precise to put #{some_key := some_value} instead of {_, _, _, {some_key, some_value}, _, _} as a pattern.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">I only fear efficiency of maps over tuples, in particular the time-cost, not so much of space-cost.</div><div style="font-size:12.8px"><br></div></div></blockquote><div><br></div><div>You've set me off - I'm allergic to the word efficiency</div><div><br></div><div>Premature worrying about efficiency is not a good idea. You should</div><div><br></div><div>     1) Build and make correct</div><div>     2) Measure if you need to</div><div>     3) Optimise if necessary</div><div><br></div><div>Step one is the tricky bit - in 38 years of programming I can only</div><div>recall having to optimise a handful of programs.</div><div><br></div><div>In the last 20 years computers have become literally millions of times</div><div>faster. The Erlang of today is millions of times faster than that of 1986 (the first Erlang) - at a guess a factor 10-20 comes from better implementation</div><div>techniques - the real speedup comes from hardware.</div><div><br></div><div>(So if you want a real speedup wait 10 years - you do *nothing* it just gets faster ) in ten years time any design decisions you made about tuples vs. </div><div>maps will be irrelevant - if you use any code you wrote ten years ago</div><div>you will value it being written as clearly and beautifully as possible.</div><div><br></div><div>I saw a quote on the notice board at bell labs years ago (not sure who said it)</div><div>it was.</div><div><br></div><div>    " An incorrect program can be made arbitrarily fast "</div><div><br></div><div>The tricky bit is making programs that work - and that you can still understand years after you wrote them.</div><div><br></div><div>/Joe</div><div>     </div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-size:12.8px"></div><div style="font-size:12.8px">How safe will I be if I resort to use only maps freely everywhere?</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Thanks</div><div style="font-size:12.8px">Avinash</div><div style="font-size:12.8px"><div><img src="https://ssl.gstatic.com/ui/v1/icons/mail/images/cleardot.gif"></div></div><br></div>
<br>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div></div>