Brendan Eich made the slides of the talk he gave on Friday at XTech 2006 in Amsterdam available. It's a revised version of the slides from the presentation at Ajax Experience two weeks ago.
46 slides well worth the time to go through!
Particularly interesting bits in my opinion for one reason or another:
- We can't make so big a spec jump again, so this is it
- No more primitive types vs. wrappers
- Function type: function (this: T, a: U, b: V): R
- let as a "better var" for block scope: for (let key in obj)
- The let variables are scoped to the expression
-
Group assignments: [p, q, r] = [q, r, p]
Even in for/in loops:
for (let [key, {'Title':title, 'FileSize':size}] in dict) print(key, title, size); - Iterators using foo.next()
- "yield" in a function makes a generator (returns an iterator)
- foo.send(value) passes value back to yield
- Sugar for initializing an Array from iterators (couldn't quite wrap my brain around that syntax, though)
- Object getters, setters, and "catch-alls"
- Standard global properties (Date, String, etc.) immutable (hmm... !?)