super.apply(this, arguments)

Brendan Eich brendan at mozilla.com
Thu Dec 20 21:39:28 PST 2007


On Dec 20, 2007, at 4:01 PM, Jeff Dyer wrote:

> The original Netscape ES4 proposal had syntax for passing arguments  
> as an
> array. (Waldemar are you listening?) IIRC it used triple dots like  
> this:
>
>    foo(...args)
>
> to mean use the elements of 'args' as positional arguments of foo. We
> dropped this from AS3 for lack of evidence for its need.

Wow. I like this, never saw it in Waldemar's proposals, but of course  
Python and other languages have something akin. This is the missing  
solution that satisfies the demand for compositional new and apply,  
as well as other apply-like use-cases (see the thread on this very  
list, inspired by Python, starting here).

Presumably you could supply one or more positional actual parameters  
before the "packed" parameter, as Python allows:

 >>> def foo(a,b,c):
...   print a,b,c
...
 >>> foo(1,2,3)
1 2 3
 >>> a = [1,2,3]
 >>> foo(*a)
1 2 3
 >>> b = [2,3]
 >>> foo(1,*b)
1 2 3

This beats a super.apply special form any day!

/be

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.mozilla.org/pipermail/es-discuss/attachments/20071220/fb1857c4/attachment-0002.html 


More information about the Es4-discuss mailing list