Let's kill terms "native" and "host"

David Bruant bruant.d at gmail.com
Fri Apr 6 14:14:00 PDT 2012


Le 06/04/2012 21:19, Allen Wirfs-Brock a écrit :
> /object/: An runtime entity that has identity and exposes properties
> (via implementations of the required "internal methods"  specified in
> chapter 8)
> /mundane object/: An /object/ that that uses only default behaviors
> for the required internal methods as specified in chapter 8. [and
> currently elsewhere until I do some reorganizing]
> /exotic object/: An /object/ that provides non-default behavior for at
> least one of the required internal methods.
What are arrays? mundane or exotic? Based on the definition, it seems it
would be exotic, but it depends on whether you intend to move array
internal method definitions to chapter 8.

> (...)
>
> Function terminology:
>
> /function -/ An /object/ that exposes the [[Call]] internal method.
> /ECMAScript function -/ A /function/ whose invocation result and
> side-effects is proved by evaluating ECMAScript code.
> /alien function -/ A /function/ whose invocation result and
> side-effects  is provided in some manner other than by evaluating
> ECMAScript code.
> /standard function/ - a /function/ whose invocation result and
> side-effects  defined by the ECMAScript specification (mostly chapter 15)
>
> An /ECMAScript function/ might be either a /mundane/ or an /exotic
> object/. An /alien function/ is always an /exotic object/ because the
> default [[Call]] internal method produces the invocation result and
> side-effects by evaluating ECMAScript code. A /standard function/ can
> potentially be implemented either as an /ECMAScript function/ or an
> /alien function/.
Currently, parseInt.toString() results in "function parseInt() { [native
code] }" on Firefox (and other browsers I think), so it might be more
suitable to rename "alien functions" to "native functions" for the sake
of consistency.


Thanks for the work on naming and defining things. It's never an easy job.

David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20120406/956ffd1b/attachment.html>


More information about the es-discuss mailing list