[e-lang] [Caja] Functional auditor for Cajita
ihab.awad at gmail.com
ihab.awad at gmail.com
Tue Dec 8 08:30:52 PST 2009
On Mon, Dec 7, 2009 at 10:56 PM, Mike Samuel <mikesamuel at gmail.com> wrote:
> Some values that are not representable in JSON but that are
> probably functional: NaN, +/-Infinity, undefined, Dates.
Good point. These too then. :)
> So functional code can't call functions, but can pass function
> objects around?
That's not what I meant - see below.
> What is the definition of functional? That evaluating it has no
> side effect?
No side effect except on the arguments supplied.
> Functions capture the lexical environment in which they're defined and
> capture "this", so it's not pure, as the "purely" in "purely
> functional" above might suggest.
Right, so that's where the compiler would step in and conservatively
annotate certain functions as having no side effects on their lexical
environment.
But it seems this sparked a lot of discussions so off I go to read.... :)
Ihab
--
Ihab A.B. Awad, Palo Alto, CA
More information about the e-lang
mailing list