<html><head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"></head>
<body>
<div>
<div style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif">Since every => Since ever<br><br>Sent from my Windows Phone</div></div>
<div dir="ltr">
<hr>
<span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif;FONT-WEIGHT:bold">From: </span><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif"><a href="mailto:andrea.giammarchi@gmail.com">Andrea Giammarchi</a></span><br>
<span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif;FONT-WEIGHT:bold">Sent: </span><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif">10/1/2013 7:35 PM</span><br><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif;FONT-WEIGHT:bold">To: </span><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif"><a href="mailto:jackalmage@gmail.com">Tab Atkins Jr.</a></span><br>
<span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif;FONT-WEIGHT:bold">Cc: </span><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif"><a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a></span><br>
<span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif;FONT-WEIGHT:bold">Subject: </span><span style="FONT-SIZE:11pt;FONT-FAMILY:Calibri,sans-serif">Re: what kind of problem is this fat arrow feature trying to solve ?</span><br>
<br></div></body></html><div dir="ltr">setTimeout accept extra arguments ... I write JavaScript that uses this feature.<div><br></div><div>`setTimeout(callback, delay, arg1, arg2, argN, evenAnObject);`</div><div><br></div>
<div>so fat arrow does not solve much here, I can use self as first argument and I am good.</div>
<div><br></div><div>`forEach` and all other arrays accept a second argument</div><div><br></div><div>`array.forEach(doStuff, boundContextObject);`</div><div><br></div><div>so fat arrow does not solve a thing in mostly all Array extras.</div>

<div><br></div><div>for **DOM** I use handlers as specified by **W3C** so that `{handleEvent: function () {this}}` works better than any mess I could create with callbacks that I won't be unable to remove later on (as I've said) ... so I can use `removeEventListener(this)` in every method handled by that object.</div>

<div><br></div><div>So I actually wonder what kind of JavaScript **you** write because this was a honest question but probably ... people not familiar with JS are the answer: since developers ignore part of JS specs available since every then we need a fat arrow to break old syntax to make the creation of self bound function easier.</div>

<div><br></div><div>This would be already an answer so thanks for participating.</div><div><br></div><div>br</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Oct 1, 2013 at 3:47 PM, Tab Atkins Jr. <span dir="ltr"><<a href="mailto:jackalmage@gmail.com" target="_blank">jackalmage@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 class="im">On Tue, Oct 1, 2013 at 3:43 PM, Andrea Giammarchi<br>
<<a href="mailto:andrea.giammarchi@gmail.com">andrea.giammarchi@gmail.com</a>> wrote:<br>
>   4. what kind of problem is this fat arrow feature trying to solve exactly,<br>
> if it cannot be used for classes, direct methods assignment, but only for<br>
> some runtime event assignment instead of using bind and still being unable<br>
> to remove that listener later on ?<br>
<br>
</div>I'm not sure what sort of JS you write, but anonymous functions that<br>
don't need standard 'this' binding are used in *lots* of places, far<br>
beyond just "runtime event assignment".  Have you never used<br>
setTimeout, forEach, map/reduce/etc, and all the<br>
callback/Promise-based features of DOM/etc?<br>
<span class="HOEnZb"><font color="#888888"><br>
~TJ<br>
</font></span></blockquote></div><br></div>