Pure functions in EcmaScript

Waldemar Horwat waldemar at google.com
Wed Nov 28 12:25:02 PST 2012


On Wed, Nov 28, 2012 at 5:39 AM, Marius Gundersen <gundersen at gmail.com>wrote:
>
> On Wed, Nov 28, 2012 at 1:20 PM, Andreas Rossberg <rossberg at google.com>wrote:
>
>> Second, due to the extremely impure nature of JavaScript, there aren't
>> many useful pure functions you could even write. For example, your
>> 'sum' function is not pure, because the implicit conversions required
>> by + can cause arbitrary side effects.
>>
>
> Functions passed to the array methods map, reduce, filter, etc would be
> good candidates for pure/side-effect-free functions. These functions
> shouldn't alter any state; they should only return a new value based on the
> parameter they were sent.
>

You haven't addressed Andreas's point: Almost any function you write is
nonpure, including your sum example. As a fun exercise, go ahead and write
a pure version of your sum example.

    Waldemar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20121128/d8fa70a5/attachment.html>


More information about the es-discuss mailing list