ES4 work

Graydon Hoare graydon at
Tue Feb 19 10:50:00 PST 2008

Michael O'Brien wrote:

> Could Graydon give a snapshot of what is not implemented in the RI in 
> terms of the proposals / features?  I know the trac database lists all, 
> but a punch list of the high priority deficits would be helpful.

Sure. I can describe the state of most issues as named by the proposals 
page, I think. Some of the proposals have sort of no-longer-sensible 
names so I'm going to use the proposals page as a rough guide and name 
the things that have seemed, in my work, to be separate "features" of 
the RI.

Implemented, may have bugs:

  - classes and interfaces
  - namespaces
  - pragmas
  - let, const, let-const
  - iterators
  - enumerability control
  - type expressions / definitions / annotations
  - runtime type checks ("standard mode")
  - nullability
  - destructuring assignment
  - slice syntax
  - hashcode
  - catchalls
  - map & vector
  - date & time improvements
  - meta objects
  - static generics
  - string trim
  - typeof
  - globals
  - expression closures
  - name objects
  - type operators (is / to / cast / wrap)

Implemented and partly working, but still in flux / work to do:

  - inheritance checking
  - strict mode
  - type parameters
  - structural types
  - numbers & decimal
  - getters & setters (structural part is incomplete)
  - packages

Partially implemented / not yet working:

  - program units
  - generic function
  - updates to unicode
  - updates to regexps


  - generators
  - tail calls
  - triple quotes
  - stack inspection
  - reformed with
  - resurrected eval (eval exists but may be wrong)
  - help for the argument object
  - "this function" / "this generator"

In my mind the "high priority" deficits where I actually know what to do 

  - extending strict mode
  - extending the part of the definer that checks inheritance

The remaining issues on my list all involve some spec/discussion work 
(units and packages, type parameters, structural typechecks, tail calls, 
reformed rules for with/this/eval/arguments)


More information about the Es4-discuss mailing list