RE: grammar update

2008-04-02 Thread Lars Hansen
Looks like those restrictions (condition only at the end, only 'for', 'for each', and 'if' clauses) originate in Brendan's original (too-sketchy) proposal, see the Comprehensions section of this page: http://wiki.ecmascript.org/doku.php?id=proposals:iterators_and_generator s IMO we're looking

RE: Strict mode recap

2008-04-02 Thread Lars Hansen
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Lars Hansen Sent: 31. mars 2008 20:09 To: Waldemar Horwat; es4-discuss@mozilla.org Subject: RE: Strict mode recap -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]

RE: let* is the new var

2008-04-02 Thread Lars Hansen
Don't remember this ever coming up; I always assumed it would be like for ES3 code (scopes of names are the entire block; functions are initialized first; then variables in order). --lars -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of P T

RE: let* is the new var

2008-04-02 Thread Jeff Dyer
Let's use 866 7052554, 6608431. dialing now... -Original Message- From: [EMAIL PROTECTED] [mailto:es4-discuss- [EMAIL PROTECTED] On Behalf Of Lars Hansen Sent: Wednesday, April 02, 2008 2:49 PM To: P T Withington; Dave Herman Cc: es4-discuss Discuss; Jon Zeppieri Subject: RE: let*

RE: let* is the new var

2008-04-02 Thread Jeff Dyer
Oops. Never mind :) Jd -Original Message- From: [EMAIL PROTECTED] [mailto:es4-discuss- [EMAIL PROTECTED] On Behalf Of Jeff Dyer Sent: Wednesday, April 02, 2008 3:06 PM To: Lars Hansen; P T Withington; Dave Herman Cc: es4-discuss Discuss; Jon Zeppieri Subject: RE: let* is the new

Re: let* is the new var

2008-04-02 Thread Michael O'Brien
We define the slots for vars and functions first at the top of the block and do initializations in-order where they reside in the code flow. So: class XX { function foo ... // fooAlias exists here but is undefined var fooAlias = foo // fooAlias is now

Re: grammar update

2008-04-02 Thread Brendan Eich
On Apr 2, 2008, at 1:03 PM, Lars Hansen wrote: Looks like those restrictions (condition only at the end, only 'for', 'for each', and 'if' clauses) originate in Brendan's original (too-sketchy) proposal, see the Comprehensions section of this page: http://wiki.ecmascript.org/doku.php?

Re: Strict mode recap

2008-04-02 Thread Jon Zeppieri
On 3/31/08, Lars Hansen [EMAIL PROTECTED] wrote: Having thought more about this, we may get away with less draconian measures for lexically scoped eval -- it's enough to simply decree that eval may not add bindings to the caller's binding object in strict mode (a simple run-time check,

RE: Strict mode recap

2008-04-02 Thread Lars Hansen
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jon Zeppieri Sent: 2. april 2008 17:51 To: Lars Hansen Cc: Waldemar Horwat; es4-discuss@mozilla.org Subject: Re: Strict mode recap On 3/31/08, Lars Hansen [EMAIL PROTECTED] wrote: Having

RE: grammar update

2008-04-02 Thread Lars Hansen
-Original Message- From: Brendan Eich [mailto:[EMAIL PROTECTED] Sent: 2. april 2008 17:15 To: Lars Hansen Cc: Jason Orendorff; Jeff Dyer; es4-discuss Subject: Re: grammar update On Apr 2, 2008, at 1:03 PM, Lars Hansen wrote: Looks like those restrictions (condition only at

Re: Strict mode recap

2008-04-02 Thread Jon Zeppieri
On 4/2/08, Lars Hansen [EMAIL PROTECTED] wrote: Lars, does this mean that expr::[expr] can't introduce lexical bindings? Or: in strict mode, it can't, but in standard it can? It can't introduce bindings; it's just a name. I meant something like: var foo::[bar] = baz; My

Re: grammar update

2008-04-02 Thread Brendan Eich
On Apr 2, 2008, at 6:01 PM, Lars Hansen wrote: This is all thin syntactic sugar, so I don't agree it rocks the boat too much to follow the full prototype in Python. I'll update the proposal, since it claims to follow the PEP, but fails since the PEP cites the RM. The PEP is scarcely

RE: Strict mode recap

2008-04-02 Thread Lars Hansen
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jon Zeppieri Sent: 2. april 2008 19:06 To: Lars Hansen Cc: es4-discuss@mozilla.org Subject: Re: Strict mode recap On 4/2/08, Lars Hansen [EMAIL PROTECTED] wrote: Lars, does this mean that

Re: Strict mode recap

2008-04-02 Thread Jon Zeppieri
On 4/2/08, Lars Hansen [EMAIL PROTECTED] wrote: I meant something like: var foo::[bar] = baz; My objection to expr::[expr] in earlier messages was based on the assumption that these computed names could be used on the left-hand side of an assignment expression -- which, I'm